mirror of
https://github.com/cryptomator/cryptomator.git
synced 2026-09-22 16:04:28 +00:00
Compare commits
29
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
88f83c5cdb | ||
|
|
c8059bef78 | ||
|
|
638b731cf8 | ||
|
|
b2b6e304ed | ||
|
|
0748709f40 | ||
|
|
d8ee446d37 | ||
|
|
9932185ccc | ||
|
|
77afd4688a | ||
|
|
9a5ef3f6ff | ||
|
|
c99f23a4c7 | ||
|
|
274c3886f5 | ||
|
|
95db29158c | ||
|
|
872680a737 | ||
|
|
0ba12f6301 | ||
|
|
248df9da51 | ||
|
|
702408d488 | ||
|
|
dd1506f17a | ||
|
|
7fb5c741ad | ||
|
|
aa61ab2b6e | ||
|
|
7a1e20d732 | ||
|
|
c1a5e187b6 | ||
|
|
57d3f788e6 | ||
|
|
ca73c3ad90 | ||
|
|
aec367dcc7 | ||
|
|
56e7c13cb1 | ||
|
|
3b4f384bfd | ||
|
|
d1a20da7e0 | ||
|
|
4b3533f717 | ||
|
|
6535adef44 |
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
# These are supported funding model platforms
|
# These are supported funding model platforms
|
||||||
|
|
||||||
github: [overheadhunter] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
github: [overheadhunter, tobihagemann] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||||
patreon: # Replace with a single Patreon username
|
patreon: # Replace with a single Patreon username
|
||||||
open_collective: # Replace with a single Open Collective username
|
open_collective: # Replace with a single Open Collective username
|
||||||
ko_fi: # Replace with a single Ko-fi username
|
ko_fi: # Replace with a single Ko-fi username
|
||||||
|
|||||||
Generated
+19
-11
@@ -7,26 +7,34 @@
|
|||||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||||
<outputRelativeToContentRoot value="true" />
|
<outputRelativeToContentRoot value="true" />
|
||||||
<processorPath useClasspath="false">
|
<processorPath useClasspath="false">
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-compiler/2.22.1/dagger-compiler-2.22.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-compiler/2.25.2/dagger-compiler-2.25.2.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger/2.22.1/dagger-2.22.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger/2.25.2/dagger-2.25.2.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-producers/2.22.1/dagger-producers-2.22.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-producers/2.25.2/dagger-producers-2.25.2.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/guava/guava/25.0-jre/guava-25.0-jre.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/guava/guava/27.1-jre/guava-27.1-jre.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-compat-qual/2.5.3/checker-compat-qual-2.5.3.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/error_prone_annotations/2.1.3/error_prone_annotations-2.1.3.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-qual/2.5.2/checker-qual-2.5.2.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/error_prone_annotations/2.2.0/error_prone_annotations-2.2.0.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.jar" />
|
<entry name="$MAVEN_REPOSITORY$/org/codehaus/mojo/animal-sniffer-annotations/1.17/animal-sniffer-annotations-1.17.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-spi/2.22.1/dagger-spi-2.22.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-compat-qual/2.5.3/checker-compat-qual-2.5.3.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-spi/2.25.2/dagger-spi-2.25.2.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/squareup/javapoet/1.11.1/javapoet-1.11.1.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/squareup/javapoet/1.11.1/javapoet-1.11.1.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/googlejavaformat/google-java-format/1.5/google-java-format-1.5.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/googlejavaformat/google-java-format/1.5/google-java-format-1.5.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/javac-shaded/9-dev-r4023-3/javac-shaded-9-dev-r4023-3.jar" />
|
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/javac-shaded/9-dev-r4023-3/javac-shaded-9-dev-r4023-3.jar" />
|
||||||
<entry name="$MAVEN_REPOSITORY$/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar" />
|
<entry name="$MAVEN_REPOSITORY$/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/net/ltgt/gradle/incap/incap/0.2/incap-0.2.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.3.50/kotlin-stdlib-1.3.50.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-common/1.3.50/kotlin-stdlib-common-1.3.50.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/annotations/13.0/annotations-13.0.jar" />
|
||||||
|
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlinx/kotlinx-metadata-jvm/0.1.0/kotlinx-metadata-jvm-0.1.0.jar" />
|
||||||
</processorPath>
|
</processorPath>
|
||||||
<module name="keychain" />
|
|
||||||
<module name="launcher" />
|
|
||||||
<module name="commons" />
|
<module name="commons" />
|
||||||
|
<module name="keychain" />
|
||||||
<module name="ui" />
|
<module name="ui" />
|
||||||
|
<module name="launcher" />
|
||||||
</profile>
|
</profile>
|
||||||
</annotationProcessing>
|
</annotationProcessing>
|
||||||
</component>
|
</component>
|
||||||
|
|||||||
+11
-10
@@ -1,4 +1,4 @@
|
|||||||
dist: xenial
|
dist: bionic
|
||||||
language: java
|
language: java
|
||||||
sudo: false
|
sudo: false
|
||||||
jdk:
|
jdk:
|
||||||
@@ -17,24 +17,25 @@ addons:
|
|||||||
- haveged
|
- haveged
|
||||||
install:
|
install:
|
||||||
- curl -o $HOME/.m2/settings.xml https://gist.githubusercontent.com/cryptobot/cf5fbd909c4782aaeeeb7c7f4a1a43da/raw/e60ee486e34ee0c79f89f947abe2c83b4290c6bb/settings.xml
|
- curl -o $HOME/.m2/settings.xml https://gist.githubusercontent.com/cryptobot/cf5fbd909c4782aaeeeb7c7f4a1a43da/raw/e60ee486e34ee0c79f89f947abe2c83b4290c6bb/settings.xml
|
||||||
- mvn -fmain/pom.xml clean install -DskipTests org.codehaus.mojo:versions-maven-plugin:help dependency:go-offline -Pcoverage,release # "clean install" needed until we can exclude artifacts currently in the reactor, see https://maven.apache.org/plugins/maven-dependency-plugin/go-offline-mojo.html#excludeReactor and https://issues.apache.org/jira/browse/MDEP-568
|
- mvn -fmain/pom.xml clean install -DskipTests -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN org.codehaus.mojo:versions-maven-plugin:help dependency:go-offline -Pcoverage,release # "clean install" needed until we can exclude artifacts currently in the reactor, see https://maven.apache.org/plugins/maven-dependency-plugin/go-offline-mojo.html#excludeReactor and https://issues.apache.org/jira/browse/MDEP-568
|
||||||
|
before_script:
|
||||||
|
- |
|
||||||
|
if [[ -n "$TRAVIS_TAG" ]]; then
|
||||||
|
mvn -fmain/pom.xml org.codehaus.mojo:versions-maven-plugin:set -DnewVersion=$TRAVIS_TAG
|
||||||
|
else
|
||||||
|
mvn -fmain/pom.xml org.codehaus.mojo:versions-maven-plugin:set -DnewVersion=SNAPSHOT-$(echo $TRAVIS_COMMIT | head -c7)
|
||||||
|
fi
|
||||||
script:
|
script:
|
||||||
- mvn --update-snapshots -fmain/pom.xml clean test verify -Pcoverage
|
- mvn --update-snapshots -fmain/pom.xml clean test verify -Pcoverage
|
||||||
after_success:
|
after_success:
|
||||||
- curl -o ~/codacy-coverage-reporter.jar https://oss.sonatype.org/service/local/repositories/releases/content/com/codacy/codacy-coverage-reporter/4.0.2/codacy-coverage-reporter-4.0.2-assembly.jar
|
- curl -o ~/codacy-coverage-reporter.jar https://oss.sonatype.org/service/local/repositories/releases/content/com/codacy/codacy-coverage-reporter/6.0.7/codacy-coverage-reporter-6.0.7-assembly.jar
|
||||||
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/commons/target/site/jacoco/jacoco.xml --partial
|
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/commons/target/site/jacoco/jacoco.xml --partial
|
||||||
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/keychain/target/site/jacoco/jacoco.xml --partial
|
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/keychain/target/site/jacoco/jacoco.xml --partial
|
||||||
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/ui/target/site/jacoco/jacoco.xml --partial
|
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/ui/target/site/jacoco/jacoco.xml --partial
|
||||||
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/launcher/target/site/jacoco/jacoco.xml --partial
|
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar report -l Java -r main/launcher/target/site/jacoco/jacoco.xml --partial
|
||||||
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar final
|
- $JAVA_HOME/bin/java -jar ~/codacy-coverage-reporter.jar final
|
||||||
before_deploy:
|
before_deploy:
|
||||||
- |
|
- mvn -fmain/pom.xml package -Prelease -DskipTests
|
||||||
if [[ -n "$TRAVIS_TAG" ]]; then
|
|
||||||
mvn -fmain/pom.xml org.codehaus.mojo:versions-maven-plugin:set -DnewVersion=$TRAVIS_TAG
|
|
||||||
elif [[ $TRAVIS_BRANCH == "develop" ]] && [[ $TRAVIS_PULL_REQUEST == "false" ]]; then
|
|
||||||
mvn -fmain/pom.xml org.codehaus.mojo:versions-maven-plugin:set -DnewVersion=SNAPSHOT-$(echo $TRAVIS_COMMIT | head -c7)
|
|
||||||
fi
|
|
||||||
- mvn -fmain/pom.xml clean package -Prelease -DskipTests
|
|
||||||
- export TODAY=`date +'%Y-%m-%d'`; envsubst '$TRAVIS_TAG $TODAY' < .travis-deploy-release.tmpl.json > .travis-deploy-release.json
|
- export TODAY=`date +'%Y-%m-%d'`; envsubst '$TRAVIS_TAG $TODAY' < .travis-deploy-release.tmpl.json > .travis-deploy-release.json
|
||||||
deploy:
|
deploy:
|
||||||
- provider: bintray # SNAPSHOTS
|
- provider: bintray # SNAPSHOTS
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>buildkit</artifactId>
|
<artifactId>buildkit</artifactId>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>commons</artifactId>
|
<artifactId>commons</artifactId>
|
||||||
<name>Cryptomator Commons</name>
|
<name>Cryptomator Commons</name>
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import javafx.beans.property.SimpleIntegerProperty;
|
|||||||
import javafx.beans.property.SimpleObjectProperty;
|
import javafx.beans.property.SimpleObjectProperty;
|
||||||
import javafx.collections.FXCollections;
|
import javafx.collections.FXCollections;
|
||||||
import javafx.collections.ObservableList;
|
import javafx.collections.ObservableList;
|
||||||
|
import javafx.geometry.NodeOrientation;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
@@ -30,9 +31,10 @@ public class Settings {
|
|||||||
public static final int DEFAULT_PORT = 42427;
|
public static final int DEFAULT_PORT = 42427;
|
||||||
public static final int DEFAULT_NUM_TRAY_NOTIFICATIONS = 3;
|
public static final int DEFAULT_NUM_TRAY_NOTIFICATIONS = 3;
|
||||||
public static final WebDavUrlScheme DEFAULT_GVFS_SCHEME = WebDavUrlScheme.DAV;
|
public static final WebDavUrlScheme DEFAULT_GVFS_SCHEME = WebDavUrlScheme.DAV;
|
||||||
public static final UiTheme DEFAULT_THEME = UiTheme.LIGHT;
|
|
||||||
public static final boolean DEFAULT_DEBUG_MODE = false;
|
public static final boolean DEFAULT_DEBUG_MODE = false;
|
||||||
public static final VolumeImpl DEFAULT_PREFERRED_VOLUME_IMPL = System.getProperty("os.name").toLowerCase().contains("windows") ? VolumeImpl.DOKANY : VolumeImpl.FUSE;
|
public static final VolumeImpl DEFAULT_PREFERRED_VOLUME_IMPL = System.getProperty("os.name").toLowerCase().contains("windows") ? VolumeImpl.DOKANY : VolumeImpl.FUSE;
|
||||||
|
public static final UiTheme DEFAULT_THEME = UiTheme.LIGHT;
|
||||||
|
public static final NodeOrientation DEFAULT_USER_INTERFACE_ORIENTATION = NodeOrientation.LEFT_TO_RIGHT;
|
||||||
|
|
||||||
private final ObservableList<VaultSettings> directories = FXCollections.observableArrayList(VaultSettings::observables);
|
private final ObservableList<VaultSettings> directories = FXCollections.observableArrayList(VaultSettings::observables);
|
||||||
private final BooleanProperty askedForUpdateCheck = new SimpleBooleanProperty(DEFAULT_ASKED_FOR_UPDATE_CHECK);
|
private final BooleanProperty askedForUpdateCheck = new SimpleBooleanProperty(DEFAULT_ASKED_FOR_UPDATE_CHECK);
|
||||||
@@ -44,6 +46,7 @@ public class Settings {
|
|||||||
private final BooleanProperty debugMode = new SimpleBooleanProperty(DEFAULT_DEBUG_MODE);
|
private final BooleanProperty debugMode = new SimpleBooleanProperty(DEFAULT_DEBUG_MODE);
|
||||||
private final ObjectProperty<VolumeImpl> preferredVolumeImpl = new SimpleObjectProperty<>(DEFAULT_PREFERRED_VOLUME_IMPL);
|
private final ObjectProperty<VolumeImpl> preferredVolumeImpl = new SimpleObjectProperty<>(DEFAULT_PREFERRED_VOLUME_IMPL);
|
||||||
private final ObjectProperty<UiTheme> theme = new SimpleObjectProperty<>(DEFAULT_THEME);
|
private final ObjectProperty<UiTheme> theme = new SimpleObjectProperty<>(DEFAULT_THEME);
|
||||||
|
private final ObjectProperty<NodeOrientation> userInterfaceOrientation = new SimpleObjectProperty<>(DEFAULT_USER_INTERFACE_ORIENTATION);
|
||||||
|
|
||||||
private Consumer<Settings> saveCmd;
|
private Consumer<Settings> saveCmd;
|
||||||
|
|
||||||
@@ -61,6 +64,7 @@ public class Settings {
|
|||||||
debugMode.addListener(this::somethingChanged);
|
debugMode.addListener(this::somethingChanged);
|
||||||
preferredVolumeImpl.addListener(this::somethingChanged);
|
preferredVolumeImpl.addListener(this::somethingChanged);
|
||||||
theme.addListener(this::somethingChanged);
|
theme.addListener(this::somethingChanged);
|
||||||
|
userInterfaceOrientation.addListener(this::somethingChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setSaveCmd(Consumer<Settings> saveCmd) {
|
void setSaveCmd(Consumer<Settings> saveCmd) {
|
||||||
@@ -118,4 +122,8 @@ public class Settings {
|
|||||||
public ObjectProperty<UiTheme> theme() {
|
public ObjectProperty<UiTheme> theme() {
|
||||||
return theme;
|
return theme;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ObjectProperty<NodeOrientation> userInterfaceOrientation() {
|
||||||
|
return userInterfaceOrientation;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+16
-2
@@ -9,6 +9,7 @@ import com.google.gson.TypeAdapter;
|
|||||||
import com.google.gson.stream.JsonReader;
|
import com.google.gson.stream.JsonReader;
|
||||||
import com.google.gson.stream.JsonToken;
|
import com.google.gson.stream.JsonToken;
|
||||||
import com.google.gson.stream.JsonWriter;
|
import com.google.gson.stream.JsonWriter;
|
||||||
|
import javafx.geometry.NodeOrientation;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
@@ -36,6 +37,7 @@ public class SettingsJsonAdapter extends TypeAdapter<Settings> {
|
|||||||
out.name("debugMode").value(value.debugMode().get());
|
out.name("debugMode").value(value.debugMode().get());
|
||||||
out.name("preferredVolumeImpl").value(value.preferredVolumeImpl().get().name());
|
out.name("preferredVolumeImpl").value(value.preferredVolumeImpl().get().name());
|
||||||
out.name("theme").value(value.theme().get().name());
|
out.name("theme").value(value.theme().get().name());
|
||||||
|
out.name("uiOrientation").value(value.userInterfaceOrientation().get().name());
|
||||||
out.endObject();
|
out.endObject();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,6 +87,9 @@ public class SettingsJsonAdapter extends TypeAdapter<Settings> {
|
|||||||
case "theme":
|
case "theme":
|
||||||
settings.theme().set(parseUiTheme(in.nextString()));
|
settings.theme().set(parseUiTheme(in.nextString()));
|
||||||
break;
|
break;
|
||||||
|
case "uiOrientation":
|
||||||
|
settings.userInterfaceOrientation().set(parseUiOrientation(in.nextString()));
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
LOG.warn("Unsupported vault setting found in JSON: " + name);
|
LOG.warn("Unsupported vault setting found in JSON: " + name);
|
||||||
in.skipValue();
|
in.skipValue();
|
||||||
@@ -109,7 +114,7 @@ public class SettingsJsonAdapter extends TypeAdapter<Settings> {
|
|||||||
try {
|
try {
|
||||||
return WebDavUrlScheme.valueOf(webDavUrlSchemeName.toUpperCase());
|
return WebDavUrlScheme.valueOf(webDavUrlSchemeName.toUpperCase());
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
LOG.warn("Invalid volume type {}. Defaulting to {}.", webDavUrlSchemeName, Settings.DEFAULT_GVFS_SCHEME);
|
LOG.warn("Invalid WebDAV url scheme {}. Defaulting to {}.", webDavUrlSchemeName, Settings.DEFAULT_GVFS_SCHEME);
|
||||||
return Settings.DEFAULT_GVFS_SCHEME;
|
return Settings.DEFAULT_GVFS_SCHEME;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -118,11 +123,20 @@ public class SettingsJsonAdapter extends TypeAdapter<Settings> {
|
|||||||
try {
|
try {
|
||||||
return UiTheme.valueOf(uiThemeName.toUpperCase());
|
return UiTheme.valueOf(uiThemeName.toUpperCase());
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
LOG.warn("Invalid volume type {}. Defaulting to {}.", uiThemeName, Settings.DEFAULT_THEME);
|
LOG.warn("Invalid ui theme {}. Defaulting to {}.", uiThemeName, Settings.DEFAULT_THEME);
|
||||||
return Settings.DEFAULT_THEME;
|
return Settings.DEFAULT_THEME;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private NodeOrientation parseUiOrientation(String uiOrientationName) {
|
||||||
|
try {
|
||||||
|
return NodeOrientation.valueOf(uiOrientationName.toUpperCase());
|
||||||
|
} catch (IllegalArgumentException e) {
|
||||||
|
LOG.warn("Invalid ui orientation {}. Defaulting to {}.", uiOrientationName, Settings.DEFAULT_USER_INTERFACE_ORIENTATION);
|
||||||
|
return Settings.DEFAULT_USER_INTERFACE_ORIENTATION;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private List<VaultSettings> readVaultSettingsArray(JsonReader in) throws IOException {
|
private List<VaultSettings> readVaultSettingsArray(JsonReader in) throws IOException {
|
||||||
List<VaultSettings> result = new ArrayList<>();
|
List<VaultSettings> result = new ArrayList<>();
|
||||||
in.beginArray();
|
in.beginArray();
|
||||||
|
|||||||
@@ -69,8 +69,9 @@ public class DokanyVolume implements Volume {
|
|||||||
} else {
|
} else {
|
||||||
//auto assign drive letter
|
//auto assign drive letter
|
||||||
if (!windowsDriveLetters.getAvailableDriveLetters().isEmpty()) {
|
if (!windowsDriveLetters.getAvailableDriveLetters().isEmpty()) {
|
||||||
return windowsDriveLetters.getAvailableDriveLetters().iterator().next();
|
return Path.of(windowsDriveLetters.getAvailableDriveLetters().iterator().next() + ":\\");
|
||||||
} else {
|
} else {
|
||||||
|
//TODO: Error Handling
|
||||||
throw new VolumeException("No free drive letter available.");
|
throw new VolumeException("No free drive letter available.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.cryptomator.common.vaults;
|
package org.cryptomator.common.vaults;
|
||||||
|
|
||||||
|
import com.google.common.collect.Sets;
|
||||||
import org.apache.commons.lang3.SystemUtils;
|
import org.apache.commons.lang3.SystemUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@@ -14,7 +15,6 @@ import javax.inject.Singleton;
|
|||||||
import java.nio.file.FileSystems;
|
import java.nio.file.FileSystems;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.function.Predicate;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.IntStream;
|
import java.util.stream.IntStream;
|
||||||
import java.util.stream.StreamSupport;
|
import java.util.stream.StreamSupport;
|
||||||
@@ -23,11 +23,11 @@ import java.util.stream.StreamSupport;
|
|||||||
public final class WindowsDriveLetters {
|
public final class WindowsDriveLetters {
|
||||||
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(WindowsDriveLetters.class);
|
private static final Logger LOG = LoggerFactory.getLogger(WindowsDriveLetters.class);
|
||||||
private static final Set<Path> D_TO_Z;
|
private static final Set<String> A_TO_Z;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
try (IntStream stream = IntStream.rangeClosed('D', 'Z')) {
|
try (IntStream stream = IntStream.rangeClosed('A', 'Z')) {
|
||||||
D_TO_Z = stream.mapToObj(i -> Path.of(((char) i)+":\\")).collect(Collectors.toSet());
|
A_TO_Z = stream.mapToObj(i -> String.valueOf((char) i)).collect(Collectors.toSet());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,20 +35,22 @@ public final class WindowsDriveLetters {
|
|||||||
public WindowsDriveLetters() {
|
public WindowsDriveLetters() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Set<Path> getOccupiedDriveLetters() {
|
public Set<String> getAllDriveLetters() {
|
||||||
|
return A_TO_Z;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<String> getOccupiedDriveLetters() {
|
||||||
if (!SystemUtils.IS_OS_WINDOWS) {
|
if (!SystemUtils.IS_OS_WINDOWS) {
|
||||||
LOG.warn("Attempted to get occupied drive letters on non-Windows machine.");
|
LOG.warn("Attempted to get occupied drive letters on non-Windows machine.");
|
||||||
return Set.of();
|
return Set.of();
|
||||||
} else {
|
} else {
|
||||||
Iterable<Path> rootDirs = FileSystems.getDefault().getRootDirectories();
|
Iterable<Path> rootDirs = FileSystems.getDefault().getRootDirectories();
|
||||||
return StreamSupport.stream(rootDirs.spliterator(), false).collect(Collectors.toSet());
|
return StreamSupport.stream(rootDirs.spliterator(), false).map(p -> p.toString().substring(0,1)).collect(Collectors.toSet());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Set<Path> getAvailableDriveLetters() {
|
public Set<String> getAvailableDriveLetters() {
|
||||||
Set<Path> occupiedDriveLetters = getOccupiedDriveLetters();
|
return Sets.difference(A_TO_Z, getOccupiedDriveLetters());
|
||||||
Predicate<Path> isOccupiedDriveLetter = occupiedDriveLetters::contains;
|
|
||||||
return D_TO_Z.stream().filter(isOccupiedDriveLetter.negate()).collect(Collectors.toSet());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>keychain</artifactId>
|
<artifactId>keychain</artifactId>
|
||||||
<name>System Keychain Access</name>
|
<name>System Keychain Access</name>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>launcher</artifactId>
|
<artifactId>launcher</artifactId>
|
||||||
<name>Cryptomator Launcher</name>
|
<name>Cryptomator Launcher</name>
|
||||||
|
|||||||
+16
-22
@@ -3,7 +3,7 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<name>Cryptomator</name>
|
<name>Cryptomator</name>
|
||||||
|
|
||||||
@@ -24,29 +24,28 @@
|
|||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|
||||||
<!-- dependency versions -->
|
<!-- dependency versions -->
|
||||||
<cryptomator.cryptofs.version>1.9.0-beta4</cryptomator.cryptofs.version>
|
<cryptomator.cryptofs.version>1.9.0-rc2</cryptomator.cryptofs.version>
|
||||||
<cryptomator.jni.version>2.2.1</cryptomator.jni.version>
|
<cryptomator.jni.version>2.2.1</cryptomator.jni.version>
|
||||||
<cryptomator.fuse.version>1.2.0</cryptomator.fuse.version>
|
<cryptomator.fuse.version>1.2.1</cryptomator.fuse.version>
|
||||||
<cryptomator.dokany.version>1.1.11</cryptomator.dokany.version>
|
<cryptomator.dokany.version>1.1.11</cryptomator.dokany.version>
|
||||||
<cryptomator.webdav.version>1.0.10</cryptomator.webdav.version>
|
<cryptomator.webdav.version>1.0.10</cryptomator.webdav.version>
|
||||||
|
|
||||||
<javafx.version>13</javafx.version>
|
<javafx.version>13.0.1</javafx.version>
|
||||||
|
|
||||||
<commons-io.version>2.6</commons-io.version>
|
<commons-lang3.version>3.9</commons-lang3.version>
|
||||||
<commons-lang3.version>3.8.1</commons-lang3.version>
|
|
||||||
|
|
||||||
<easybind.version>1.0.3</easybind.version>
|
<easybind.version>1.0.3</easybind.version>
|
||||||
|
|
||||||
<guava.version>27.1-jre</guava.version>
|
<guava.version>28.1-jre</guava.version>
|
||||||
<dagger.version>2.22.1</dagger.version>
|
<dagger.version>2.25.2</dagger.version>
|
||||||
<gson.version>2.8.5</gson.version>
|
<gson.version>2.8.6</gson.version>
|
||||||
|
|
||||||
<slf4j.version>1.7.26</slf4j.version>
|
<slf4j.version>1.7.29</slf4j.version>
|
||||||
<logback.version>1.2.3</logback.version>
|
<logback.version>1.2.3</logback.version>
|
||||||
|
|
||||||
<junit.jupiter.version>5.4.2</junit.jupiter.version>
|
<junit.jupiter.version>5.5.2</junit.jupiter.version>
|
||||||
<mockito.version>2.27.0</mockito.version>
|
<mockito.version>3.1.0</mockito.version>
|
||||||
<hamcrest.version>2.1</hamcrest.version>
|
<hamcrest.version>2.2</hamcrest.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<repositories>
|
<repositories>
|
||||||
@@ -152,11 +151,6 @@
|
|||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- Apache Commons -->
|
<!-- Apache Commons -->
|
||||||
<dependency>
|
|
||||||
<groupId>commons-io</groupId>
|
|
||||||
<artifactId>commons-io</artifactId>
|
|
||||||
<version>${commons-io.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-lang3</artifactId>
|
<artifactId>commons-lang3</artifactId>
|
||||||
@@ -267,7 +261,7 @@
|
|||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-dependency-plugin</artifactId>
|
<artifactId>maven-dependency-plugin</artifactId>
|
||||||
<version>3.1.0</version>
|
<version>3.1.1</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>copy-libs</id>
|
<id>copy-libs</id>
|
||||||
@@ -296,7 +290,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.jacoco</groupId>
|
<groupId>org.jacoco</groupId>
|
||||||
<artifactId>jacoco-maven-plugin</artifactId>
|
<artifactId>jacoco-maven-plugin</artifactId>
|
||||||
<version>0.8.2</version>
|
<version>0.8.5</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>prepare-agent</id>
|
<id>prepare-agent</id>
|
||||||
@@ -323,7 +317,7 @@
|
|||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
<version>3.8.0</version>
|
<version>3.8.1</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<release>11</release>
|
<release>11</release>
|
||||||
<annotationProcessorPaths>
|
<annotationProcessorPaths>
|
||||||
@@ -338,7 +332,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-surefire-plugin</artifactId>
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
<version>2.22.1</version>
|
<version>2.22.2</version>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
|||||||
+1
-5
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.0-alpha2</version>
|
<version>1.5.0-beta1</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>ui</artifactId>
|
<artifactId>ui</artifactId>
|
||||||
<name>Cryptomator GUI</name>
|
<name>Cryptomator GUI</name>
|
||||||
@@ -50,10 +50,6 @@
|
|||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- Apache Commons -->
|
<!-- Apache Commons -->
|
||||||
<dependency>
|
|
||||||
<groupId>commons-io</groupId>
|
|
||||||
<artifactId>commons-io</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-lang3</artifactId>
|
<artifactId>commons-lang3</artifactId>
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import javafx.scene.input.KeyCombination;
|
|||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
import javafx.stage.Window;
|
import javafx.stage.Window;
|
||||||
import org.apache.commons.lang3.SystemUtils;
|
import org.apache.commons.lang3.SystemUtils;
|
||||||
|
import org.cryptomator.common.settings.Settings;
|
||||||
import org.cryptomator.ui.fxapp.FxApplicationScoped;
|
import org.cryptomator.ui.fxapp.FxApplicationScoped;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@@ -19,16 +20,25 @@ public class DefaultSceneFactory implements Function<Parent, Scene> {
|
|||||||
protected static final KeyCodeCombination ALT_F4 = new KeyCodeCombination(KeyCode.F4, KeyCombination.ALT_DOWN);
|
protected static final KeyCodeCombination ALT_F4 = new KeyCodeCombination(KeyCode.F4, KeyCombination.ALT_DOWN);
|
||||||
protected static final KeyCodeCombination SHORTCUT_W = new KeyCodeCombination(KeyCode.W, KeyCombination.SHORTCUT_DOWN);
|
protected static final KeyCodeCombination SHORTCUT_W = new KeyCodeCombination(KeyCode.W, KeyCombination.SHORTCUT_DOWN);
|
||||||
|
|
||||||
|
protected final Settings settings;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public DefaultSceneFactory() {}
|
public DefaultSceneFactory(Settings settings) {
|
||||||
|
this.settings = settings;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Scene apply(Parent root) {
|
public Scene apply(Parent root) {
|
||||||
Scene scene = new Scene(root);
|
Scene scene = new Scene(root);
|
||||||
|
configureRoot(root);
|
||||||
configureScene(scene);
|
configureScene(scene);
|
||||||
return scene;
|
return scene;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void configureRoot(Parent root) {
|
||||||
|
root.nodeOrientationProperty().bind(settings.userInterfaceOrientation());
|
||||||
|
}
|
||||||
|
|
||||||
protected void configureScene(Scene scene) {
|
protected void configureScene(Scene scene) {
|
||||||
scene.windowProperty().addListener(observable -> {
|
scene.windowProperty().addListener(observable -> {
|
||||||
Window window = scene.getWindow();
|
Window window = scene.getWindow();
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import javafx.scene.input.KeyCodeCombination;
|
|||||||
import javafx.scene.input.KeyCombination;
|
import javafx.scene.input.KeyCombination;
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
import org.apache.commons.lang3.SystemUtils;
|
import org.apache.commons.lang3.SystemUtils;
|
||||||
|
import org.cryptomator.common.settings.Settings;
|
||||||
import org.cryptomator.ui.common.DefaultSceneFactory;
|
import org.cryptomator.ui.common.DefaultSceneFactory;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@@ -20,7 +21,8 @@ public class MainWindowSceneFactory extends DefaultSceneFactory {
|
|||||||
private final Lazy<VaultListController> vaultListController;
|
private final Lazy<VaultListController> vaultListController;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public MainWindowSceneFactory(Lazy<MainWindowController> mainWindowController, Lazy<VaultListController> vaultListController) {
|
public MainWindowSceneFactory(Settings settings, Lazy<MainWindowController> mainWindowController, Lazy<VaultListController> vaultListController) {
|
||||||
|
super(settings);
|
||||||
this.mainWindowController = mainWindowController;
|
this.mainWindowController = mainWindowController;
|
||||||
this.vaultListController = vaultListController;
|
this.vaultListController = vaultListController;
|
||||||
}
|
}
|
||||||
|
|||||||
+26
@@ -1,21 +1,33 @@
|
|||||||
package org.cryptomator.ui.preferences;
|
package org.cryptomator.ui.preferences;
|
||||||
|
|
||||||
|
import javafx.beans.value.ObservableValue;
|
||||||
|
import javafx.geometry.NodeOrientation;
|
||||||
import javafx.scene.control.CheckBox;
|
import javafx.scene.control.CheckBox;
|
||||||
import javafx.scene.control.ChoiceBox;
|
import javafx.scene.control.ChoiceBox;
|
||||||
|
import javafx.scene.control.RadioButton;
|
||||||
|
import javafx.scene.control.Toggle;
|
||||||
|
import javafx.scene.control.ToggleGroup;
|
||||||
import javafx.util.StringConverter;
|
import javafx.util.StringConverter;
|
||||||
import org.cryptomator.common.settings.Settings;
|
import org.cryptomator.common.settings.Settings;
|
||||||
import org.cryptomator.common.settings.UiTheme;
|
import org.cryptomator.common.settings.UiTheme;
|
||||||
import org.cryptomator.ui.common.FxController;
|
import org.cryptomator.ui.common.FxController;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
@PreferencesScoped
|
@PreferencesScoped
|
||||||
public class GeneralPreferencesController implements FxController {
|
public class GeneralPreferencesController implements FxController {
|
||||||
|
|
||||||
|
private static final Logger LOG = LoggerFactory.getLogger(GeneralPreferencesController.class);
|
||||||
|
|
||||||
private final Settings settings;
|
private final Settings settings;
|
||||||
public ChoiceBox<UiTheme> themeChoiceBox;
|
public ChoiceBox<UiTheme> themeChoiceBox;
|
||||||
public CheckBox startHiddenCheckbox;
|
public CheckBox startHiddenCheckbox;
|
||||||
public CheckBox debugModeCheckbox;
|
public CheckBox debugModeCheckbox;
|
||||||
|
public ToggleGroup nodeOrientation;
|
||||||
|
public RadioButton nodeOrientationLtr;
|
||||||
|
public RadioButton nodeOrientationRtl;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
GeneralPreferencesController(Settings settings) {
|
GeneralPreferencesController(Settings settings) {
|
||||||
@@ -30,6 +42,20 @@ public class GeneralPreferencesController implements FxController {
|
|||||||
startHiddenCheckbox.selectedProperty().bindBidirectional(settings.startHidden());
|
startHiddenCheckbox.selectedProperty().bindBidirectional(settings.startHidden());
|
||||||
|
|
||||||
debugModeCheckbox.selectedProperty().bindBidirectional(settings.debugMode());
|
debugModeCheckbox.selectedProperty().bindBidirectional(settings.debugMode());
|
||||||
|
|
||||||
|
nodeOrientation.selectedToggleProperty().addListener(this::toggleNodeOrientation);
|
||||||
|
nodeOrientationLtr.setSelected(settings.userInterfaceOrientation().get() == NodeOrientation.LEFT_TO_RIGHT);
|
||||||
|
nodeOrientationRtl.setSelected(settings.userInterfaceOrientation().get() == NodeOrientation.RIGHT_TO_LEFT);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void toggleNodeOrientation(@SuppressWarnings("unused") ObservableValue<? extends Toggle> observable, @SuppressWarnings("unused") Toggle oldValue, Toggle newValue) {
|
||||||
|
if (nodeOrientationLtr.equals(newValue)) {
|
||||||
|
settings.userInterfaceOrientation().set(NodeOrientation.LEFT_TO_RIGHT);
|
||||||
|
} else if (nodeOrientationRtl.equals(newValue)) {
|
||||||
|
settings.userInterfaceOrientation().set(NodeOrientation.RIGHT_TO_LEFT);
|
||||||
|
} else {
|
||||||
|
LOG.warn("Unexpected toggle option {}", newValue);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Helper classes */
|
/* Helper classes */
|
||||||
|
|||||||
@@ -16,6 +16,9 @@ import org.cryptomator.ui.common.FxController;
|
|||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TODO: if WebDAV is selected under Windows, show warning that specific mount options (like selecting a directory as mount point) are _not_ supported
|
||||||
|
*/
|
||||||
@PreferencesScoped
|
@PreferencesScoped
|
||||||
public class VolumePreferencesController implements FxController {
|
public class VolumePreferencesController implements FxController {
|
||||||
|
|
||||||
|
|||||||
@@ -1,34 +1,76 @@
|
|||||||
package org.cryptomator.ui.vaultoptions;
|
package org.cryptomator.ui.vaultoptions;
|
||||||
|
|
||||||
|
import com.google.common.base.Strings;
|
||||||
|
import javafx.beans.binding.Bindings;
|
||||||
|
import javafx.beans.binding.BooleanBinding;
|
||||||
|
import javafx.beans.property.BooleanProperty;
|
||||||
|
import javafx.beans.property.SimpleBooleanProperty;
|
||||||
|
import javafx.beans.property.StringProperty;
|
||||||
|
import javafx.beans.value.ObservableValue;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.scene.control.CheckBox;
|
import javafx.scene.control.CheckBox;
|
||||||
|
import javafx.scene.control.ChoiceBox;
|
||||||
|
import javafx.scene.control.RadioButton;
|
||||||
import javafx.scene.control.TextField;
|
import javafx.scene.control.TextField;
|
||||||
|
import javafx.scene.control.Toggle;
|
||||||
|
import javafx.scene.control.ToggleGroup;
|
||||||
|
import javafx.stage.DirectoryChooser;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
import javafx.util.StringConverter;
|
||||||
|
import org.apache.commons.lang3.SystemUtils;
|
||||||
|
import org.cryptomator.common.settings.Settings;
|
||||||
|
import org.cryptomator.common.settings.VolumeImpl;
|
||||||
import org.cryptomator.common.vaults.Vault;
|
import org.cryptomator.common.vaults.Vault;
|
||||||
|
import org.cryptomator.common.vaults.WindowsDriveLetters;
|
||||||
import org.cryptomator.ui.common.FxController;
|
import org.cryptomator.ui.common.FxController;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
import java.io.File;
|
||||||
|
import java.nio.file.Path;
|
||||||
|
import java.util.ResourceBundle;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TODO: if WebDav is selected on a windows system, custom mount directory is _not_ supported. This is currently not indicated/shown/etc in the ui
|
||||||
|
*/
|
||||||
@VaultOptionsScoped
|
@VaultOptionsScoped
|
||||||
public class MountOptionsController implements FxController {
|
public class MountOptionsController implements FxController {
|
||||||
|
|
||||||
|
private final Stage window;
|
||||||
private final Vault vault;
|
private final Vault vault;
|
||||||
|
private final BooleanProperty osIsWindows = new SimpleBooleanProperty(SystemUtils.IS_OS_WINDOWS);
|
||||||
|
private final BooleanBinding webDavAndWindows;
|
||||||
|
private final WindowsDriveLetters windowsDriveLetters;
|
||||||
|
private final ResourceBundle resourceBundle;
|
||||||
public TextField driveName;
|
public TextField driveName;
|
||||||
public CheckBox readOnlyCheckbox;
|
public CheckBox readOnlyCheckbox;
|
||||||
public CheckBox customMountFlagsCheckbox;
|
public CheckBox customMountFlagsCheckbox;
|
||||||
public TextField mountFlags;
|
public TextField mountFlags;
|
||||||
|
public ToggleGroup mountPoint;
|
||||||
|
public RadioButton mountPointAuto;
|
||||||
|
public RadioButton mountPointWinDriveLetter;
|
||||||
|
public RadioButton mountPointCustomDir;
|
||||||
|
public ChoiceBox<String> driveLetterSelection;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
MountOptionsController(@VaultOptionsWindow Vault vault) {
|
MountOptionsController(@VaultOptionsWindow Stage window, @VaultOptionsWindow Vault vault, Settings settings, WindowsDriveLetters windowsDriveLetters, ResourceBundle resourceBundle) {
|
||||||
|
this.window = window;
|
||||||
this.vault = vault;
|
this.vault = vault;
|
||||||
|
this.webDavAndWindows = settings.preferredVolumeImpl().isEqualTo(VolumeImpl.WEBDAV).and(osIsWindows);
|
||||||
|
this.windowsDriveLetters = windowsDriveLetters;
|
||||||
|
this.resourceBundle = resourceBundle;
|
||||||
}
|
}
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
driveName.textProperty().bindBidirectional(vault.getVaultSettings().mountName());
|
driveName.textProperty().bindBidirectional(vault.getVaultSettings().mountName());
|
||||||
|
|
||||||
|
// readonly:
|
||||||
readOnlyCheckbox.selectedProperty().bindBidirectional(vault.getVaultSettings().usesReadOnlyMode());
|
readOnlyCheckbox.selectedProperty().bindBidirectional(vault.getVaultSettings().usesReadOnlyMode());
|
||||||
mountFlags.disableProperty().bind(customMountFlagsCheckbox.selectedProperty().not());
|
|
||||||
readOnlyCheckbox.disableProperty().bind(customMountFlagsCheckbox.selectedProperty());
|
readOnlyCheckbox.disableProperty().bind(customMountFlagsCheckbox.selectedProperty());
|
||||||
|
|
||||||
|
// custom mount flags:
|
||||||
|
mountFlags.disableProperty().bind(customMountFlagsCheckbox.selectedProperty().not());
|
||||||
customMountFlagsCheckbox.setSelected(vault.isHavingCustomMountFlags());
|
customMountFlagsCheckbox.setSelected(vault.isHavingCustomMountFlags());
|
||||||
if (vault.isHavingCustomMountFlags()) {
|
if (vault.isHavingCustomMountFlags()) {
|
||||||
mountFlags.textProperty().bindBidirectional(vault.getVaultSettings().mountFlags());
|
mountFlags.textProperty().bindBidirectional(vault.getVaultSettings().mountFlags());
|
||||||
@@ -36,6 +78,25 @@ public class MountOptionsController implements FxController {
|
|||||||
} else {
|
} else {
|
||||||
mountFlags.textProperty().bind(vault.defaultMountFlagsProperty());
|
mountFlags.textProperty().bind(vault.defaultMountFlagsProperty());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// mount point options:
|
||||||
|
mountPoint.selectedToggleProperty().addListener(this::toggleMountPoint);
|
||||||
|
driveLetterSelection.getItems().addAll(windowsDriveLetters.getAllDriveLetters());
|
||||||
|
driveLetterSelection.setConverter(new WinDriveLetterLabelConverter(windowsDriveLetters));
|
||||||
|
driveLetterSelection.setValue(vault.getVaultSettings().winDriveLetter().get());
|
||||||
|
vault.getVaultSettings().usesIndividualMountPath().bind(mountPoint.selectedToggleProperty().isEqualTo(mountPointCustomDir));
|
||||||
|
vault.getVaultSettings().winDriveLetter().bind( //
|
||||||
|
Bindings.when(mountPoint.selectedToggleProperty().isEqualTo(mountPointWinDriveLetter)) //
|
||||||
|
.then(driveLetterSelection.getSelectionModel().selectedItemProperty()) //
|
||||||
|
.otherwise((String) null) //
|
||||||
|
);
|
||||||
|
if (vault.getVaultSettings().usesIndividualMountPath().get()) {
|
||||||
|
mountPoint.selectToggle(mountPointCustomDir);
|
||||||
|
} else if (!Strings.isNullOrEmpty(vault.getVaultSettings().winDriveLetter().get())) {
|
||||||
|
mountPoint.selectToggle(mountPointWinDriveLetter);
|
||||||
|
} else {
|
||||||
|
mountPoint.selectToggle(mountPointAuto);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
@@ -51,4 +112,81 @@ public class MountOptionsController implements FxController {
|
|||||||
mountFlags.textProperty().bind(vault.defaultMountFlagsProperty());
|
mountFlags.textProperty().bind(vault.defaultMountFlagsProperty());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@FXML
|
||||||
|
private void chooseCustomMountPoint() {
|
||||||
|
DirectoryChooser directoryChooser = new DirectoryChooser();
|
||||||
|
directoryChooser.setTitle(resourceBundle.getString("vaultOptions.mount.winDirChooser"));
|
||||||
|
try {
|
||||||
|
directoryChooser.setInitialDirectory(Path.of(System.getProperty("user.home")).toFile());
|
||||||
|
} catch (Exception e) {
|
||||||
|
//NO-OP
|
||||||
|
}
|
||||||
|
File file = directoryChooser.showDialog(window);
|
||||||
|
if (file != null) {
|
||||||
|
vault.getVaultSettings().individualMountPath().set(file.getAbsolutePath());
|
||||||
|
} else {
|
||||||
|
vault.getVaultSettings().individualMountPath().set(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void toggleMountPoint(@SuppressWarnings("unused") ObservableValue<? extends Toggle> observable, @SuppressWarnings("unused") Toggle oldValue, Toggle newValue) {
|
||||||
|
if (mountPointCustomDir.equals(newValue) && Strings.isNullOrEmpty(vault.getVaultSettings().individualMountPath().get())) {
|
||||||
|
chooseCustomMountPoint();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Converts 'C' to "C:" to translate between model and GUI.
|
||||||
|
*/
|
||||||
|
private static class WinDriveLetterLabelConverter extends StringConverter<String> {
|
||||||
|
|
||||||
|
private final Set<String> occupiedDriveLetters;
|
||||||
|
|
||||||
|
WinDriveLetterLabelConverter(WindowsDriveLetters windowsDriveLetters) {
|
||||||
|
this.occupiedDriveLetters = windowsDriveLetters.getOccupiedDriveLetters();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString(String driveLetter) {
|
||||||
|
if (occupiedDriveLetters.contains(driveLetter)) {
|
||||||
|
return driveLetter + ": (occupied)"; // TODO localize?
|
||||||
|
} else {
|
||||||
|
return driveLetter + ":";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String fromString(String string) {
|
||||||
|
throw new UnsupportedOperationException();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Getter & Setter
|
||||||
|
|
||||||
|
public BooleanProperty osIsWindowsProperty() {
|
||||||
|
return osIsWindows;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getOsIsWindows() {
|
||||||
|
return osIsWindows.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
public BooleanBinding webDavAndWindowsProperty() {
|
||||||
|
return webDavAndWindows;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isWebDavAndWindows() {
|
||||||
|
return webDavAndWindows.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
public StringProperty customMountPathProperty() {
|
||||||
|
return vault.getVaultSettings().individualMountPath();
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCustomMountPath() {
|
||||||
|
return vault.getVaultSettings().individualMountPath().get();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,10 +6,15 @@
|
|||||||
<?import javafx.scene.control.Label?>
|
<?import javafx.scene.control.Label?>
|
||||||
<?import javafx.scene.layout.HBox?>
|
<?import javafx.scene.layout.HBox?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
|
<?import javafx.scene.control.RadioButton?>
|
||||||
|
<?import javafx.scene.control.ToggleGroup?>
|
||||||
<VBox xmlns="http://javafx.com/javafx"
|
<VBox xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="org.cryptomator.ui.preferences.GeneralPreferencesController"
|
fx:controller="org.cryptomator.ui.preferences.GeneralPreferencesController"
|
||||||
spacing="6">
|
spacing="6">
|
||||||
|
<fx:define>
|
||||||
|
<ToggleGroup fx:id="nodeOrientation"/>
|
||||||
|
</fx:define>
|
||||||
<padding>
|
<padding>
|
||||||
<Insets topRightBottomLeft="12"/>
|
<Insets topRightBottomLeft="12"/>
|
||||||
</padding>
|
</padding>
|
||||||
@@ -19,6 +24,12 @@
|
|||||||
<ChoiceBox fx:id="themeChoiceBox"/>
|
<ChoiceBox fx:id="themeChoiceBox"/>
|
||||||
</HBox>
|
</HBox>
|
||||||
|
|
||||||
|
<HBox spacing="6" alignment="CENTER_LEFT">
|
||||||
|
<Label text="Interface Orientation" HBox.hgrow="NEVER"/>
|
||||||
|
<RadioButton fx:id="nodeOrientationLtr" text="Left to Right" alignment="CENTER_LEFT" toggleGroup="${nodeOrientation}"/>
|
||||||
|
<RadioButton fx:id="nodeOrientationRtl" text="Right to Left" alignment="CENTER_RIGHT" toggleGroup="${nodeOrientation}"/>
|
||||||
|
</HBox>
|
||||||
|
|
||||||
<CheckBox fx:id="startHiddenCheckbox" text="%preferences.general.startHidden"/>
|
<CheckBox fx:id="startHiddenCheckbox" text="%preferences.general.startHidden"/>
|
||||||
|
|
||||||
<CheckBox fx:id="debugModeCheckbox" text="%preferences.general.debugLogging"/>
|
<CheckBox fx:id="debugModeCheckbox" text="%preferences.general.debugLogging"/>
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
<?import javafx.scene.control.Button?>
|
<?import javafx.scene.control.Button?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
|
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
|
||||||
|
<?import javafx.scene.control.Label?>
|
||||||
<VBox xmlns="http://javafx.com/javafx"
|
<VBox xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="org.cryptomator.ui.mainwindow.VaultDetailNeedsMigrationController"
|
fx:controller="org.cryptomator.ui.mainwindow.VaultDetailNeedsMigrationController"
|
||||||
@@ -11,7 +12,8 @@
|
|||||||
<Insets topRightBottomLeft="24"/>
|
<Insets topRightBottomLeft="24"/>
|
||||||
</padding>
|
</padding>
|
||||||
<children>
|
<children>
|
||||||
<Button styleClass="button-large" text="TODO Upgrade Vault" minWidth="120" onAction="#showVaultMigrator">
|
<Label text="%main.vaultDetail.migratePrompt" wrapText="true"/>
|
||||||
|
<Button styleClass="button-large" text="%main.vaultDetail.migrateButton" minWidth="120" onAction="#showVaultMigrator">
|
||||||
<graphic>
|
<graphic>
|
||||||
<FontAwesome5IconView glyph="FILE_IMPORT" glyphSize="15"/>
|
<FontAwesome5IconView glyph="FILE_IMPORT" glyphSize="15"/>
|
||||||
</graphic>
|
</graphic>
|
||||||
|
|||||||
@@ -1,16 +1,25 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<?import javafx.geometry.Insets?>
|
<?import javafx.geometry.Insets?>
|
||||||
|
<?import javafx.scene.control.Button?>
|
||||||
<?import javafx.scene.control.CheckBox?>
|
<?import javafx.scene.control.CheckBox?>
|
||||||
|
<?import javafx.scene.control.ChoiceBox?>
|
||||||
<?import javafx.scene.control.Label?>
|
<?import javafx.scene.control.Label?>
|
||||||
|
<?import javafx.scene.control.RadioButton?>
|
||||||
<?import javafx.scene.control.TextField?>
|
<?import javafx.scene.control.TextField?>
|
||||||
|
<?import javafx.scene.control.ToggleGroup?>
|
||||||
<?import javafx.scene.layout.HBox?>
|
<?import javafx.scene.layout.HBox?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
|
<?import javafx.scene.text.Text?>
|
||||||
<?import org.cryptomator.ui.controls.AlphanumericTextField?>
|
<?import org.cryptomator.ui.controls.AlphanumericTextField?>
|
||||||
|
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
|
||||||
<VBox xmlns="http://javafx.com/javafx"
|
<VBox xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="org.cryptomator.ui.vaultoptions.MountOptionsController"
|
fx:controller="org.cryptomator.ui.vaultoptions.MountOptionsController"
|
||||||
spacing="6">
|
spacing="6">
|
||||||
|
<fx:define>
|
||||||
|
<ToggleGroup fx:id="mountPoint"/>
|
||||||
|
</fx:define>
|
||||||
<padding>
|
<padding>
|
||||||
<Insets topRightBottomLeft="12"/>
|
<Insets topRightBottomLeft="12"/>
|
||||||
</padding>
|
</padding>
|
||||||
@@ -32,6 +41,26 @@
|
|||||||
</children>
|
</children>
|
||||||
</HBox>
|
</HBox>
|
||||||
|
|
||||||
<!-- TODO windows drive letter, see https://github.com/cryptomator/cryptomator/blob/1.4.16/main/ui/src/main/java/org/cryptomator/ui/model/Vault.java#L283-L298 -->
|
<Text text="TODO Mount Point"/>
|
||||||
|
<RadioButton toggleGroup="${mountPoint}" fx:id="mountPointAuto" text="TODO Automatically pick a suitable location"/>
|
||||||
|
<HBox spacing="6" visible="${controller.osIsWindows}" managed="${controller.osIsWindows}">
|
||||||
|
<RadioButton toggleGroup="${mountPoint}" fx:id="mountPointWinDriveLetter" text="TODO Choose specific drive letter"/>
|
||||||
|
<ChoiceBox fx:id="driveLetterSelection" disable="${!mountPointWinDriveLetter.selected}"/>
|
||||||
|
</HBox>
|
||||||
|
<RadioButton toggleGroup="${mountPoint}" fx:id="mountPointCustomDir" text="TODO Choose empty directory"/>
|
||||||
|
<HBox visible="${mountPointCustomDir.selected}">
|
||||||
|
<padding>
|
||||||
|
<Insets left="24"/>
|
||||||
|
</padding>
|
||||||
|
<children>
|
||||||
|
<TextField text="${controller.customMountPath}" HBox.hgrow="ALWAYS" maxWidth="Infinity" disable="true"/>
|
||||||
|
<Button text="TODO change" onAction="#chooseCustomMountPoint" contentDisplay="LEFT">
|
||||||
|
<graphic>
|
||||||
|
<FontAwesome5IconView glyph="FOLDER_OPEN" glyphSize="15"/>
|
||||||
|
</graphic>
|
||||||
|
</Button>
|
||||||
|
</children>
|
||||||
|
</HBox>
|
||||||
</children>
|
</children>
|
||||||
|
|
||||||
</VBox>
|
</VBox>
|
||||||
|
|||||||
@@ -37,12 +37,13 @@ addvaultwizard.new.directoryPickerTitle=Select Directory
|
|||||||
addvaultwizard.new.enterPassword=Enter a password for the vault
|
addvaultwizard.new.enterPassword=Enter a password for the vault
|
||||||
addvaultwizard.new.fileAlreadyExists=Vault can not be created at this path because some object already exists.
|
addvaultwizard.new.fileAlreadyExists=Vault can not be created at this path because some object already exists.
|
||||||
addvaultwizard.new.invalidName=Invalid vault name. Please consider a regular directory name.
|
addvaultwizard.new.invalidName=Invalid vault name. Please consider a regular directory name.
|
||||||
addvaultwizard.new.ioException=Selected directory failed a basic test. Make sure to have the appropiate access rights and nothing interferes with Cryptomator.
|
addvaultwizard.new.ioException=Selected directory failed a basic test. Make sure to have the appropriate access rights and nothing interferes with Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Confirm the password
|
addvaultwizard.new.reenterPassword=Confirm the password
|
||||||
addvaultwizard.new.passwordsMatch=Passwords match!
|
addvaultwizard.new.passwordsMatch=Passwords match!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Passwords do not match
|
addvaultwizard.new.passwordsDoNotMatch=Passwords do not match
|
||||||
addvaultwizard.new.createVaultBtn=Create Vault
|
addvaultwizard.new.createVaultBtn=Create Vault
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=This is your recovery key. Keep it safe, it is your only chance to recover your data if you lose your password.
|
addvaultwizard.new.recoveryKeyInstruction=This is your recovery key. Keep it safe, it is your only chance to recover your data if you lose your password.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Yes, I've made a secure backup of this recovery key
|
addvaultwizard.new.recoveryKeySavedCheckbox=Yes, I've made a secure backup of this recovery key
|
||||||
### Information
|
### Information
|
||||||
@@ -131,10 +132,12 @@ main.vaultlist.emptyList.onboardingInstruction=Click here to add a vault
|
|||||||
main.vaultlist.contextMenu.remove=Remove Vault
|
main.vaultlist.contextMenu.remove=Remove Vault
|
||||||
main.vaultlist.addVaultBtn=Add Vault
|
main.vaultlist.addVaultBtn=Add Vault
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=LOCKED
|
main.vaultDetail.lockedStatus=LOCKED
|
||||||
main.vaultDetail.unlockedStatus=UNLOCKED
|
|
||||||
main.vaultDetail.unlockBtn=Unlock
|
main.vaultDetail.unlockBtn=Unlock
|
||||||
main.vaultDetail.optionsBtn=Vault Options
|
main.vaultDetail.optionsBtn=Vault Options
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=UNLOCKED
|
||||||
main.vaultDetail.accessLocation=Your vault's contents are accessible here:
|
main.vaultDetail.accessLocation=Your vault's contents are accessible here:
|
||||||
main.vaultDetail.revealBtn=Reveal Drive
|
main.vaultDetail.revealBtn=Reveal Drive
|
||||||
main.vaultDetail.lockBtn=Lock
|
main.vaultDetail.lockBtn=Lock
|
||||||
@@ -143,6 +146,9 @@ main.vaultDetail.bytesPerSecondWritten=written:
|
|||||||
main.vaultDetail.throughput.idle=idle
|
main.vaultDetail.throughput.idle=idle
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Upgrade Vault
|
||||||
|
main.vaultDetail.migratePrompt=Your vault needs to be upgraded to a new format, before you can access it
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Unknown File
|
wrongFileAlert.title=Unknown File
|
||||||
@@ -150,13 +156,17 @@ wrongFileAlert.btn=Okay
|
|||||||
wrongFileAlert.information=You have tried to add a file or folder that does not seem to be a Cryptomator vault. To encrypt your data, create and unlock a vault.
|
wrongFileAlert.information=You have tried to add a file or folder that does not seem to be a Cryptomator vault. To encrypt your data, create and unlock a vault.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=General
|
vaultOptions.general=General
|
||||||
vaultOptions.general.changePasswordBtn=Change Password
|
vaultOptions.general.changePasswordBtn=Change Password
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Display Recovery Key
|
vaultOptions.general.showRecoveryKeyBtn=Display Recovery Key
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Mounting
|
vaultOptions.mount=Mounting
|
||||||
vaultOptions.mount.readonly=Read-Only
|
vaultOptions.mount.readonly=Read-Only
|
||||||
vaultOptions.mount.driveName=Drive Name
|
vaultOptions.mount.driveName=Drive Name
|
||||||
vaultOptions.mount.customMountFlags=Custom Mount Flags
|
vaultOptions.mount.customMountFlags=Custom Mount Flags
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=occupied
|
||||||
|
vaultOptions.mount.winDirChooser=Pick an empty directory
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Recovery Key
|
recoveryKey.title=Recovery Key
|
||||||
|
|||||||
@@ -0,0 +1,116 @@
|
|||||||
|
# Locale Specific CSS files such as CJK, RTL,...
|
||||||
|
|
||||||
|
# Generics
|
||||||
|
## Button
|
||||||
|
generic.button.apply=طبّق
|
||||||
|
generic.button.back=الى الوراء
|
||||||
|
generic.button.cancel=الغاء
|
||||||
|
generic.button.change=تغيير
|
||||||
|
generic.button.done=تم
|
||||||
|
generic.button.next=التالي
|
||||||
|
|
||||||
|
# Tray Menu
|
||||||
|
traymenu.showMainWindow=اظهار
|
||||||
|
traymenu.showPreferencesWindow=تفضيلات
|
||||||
|
traymenu.quitApplication=انهاء
|
||||||
|
traymenu.vault.unlock=افتح
|
||||||
|
traymenu.vault.lock=قفل
|
||||||
|
traymenu.vault.reveal=إظهار
|
||||||
|
|
||||||
|
# Add Vault Wizard
|
||||||
|
addvaultwizard.title=أضِف مخزنًا
|
||||||
|
## Welcome
|
||||||
|
addvaultwizard.welcome.newButton=إنشاء مخزن جديد
|
||||||
|
addvaultwizard.welcome.existingButton=افتح مخزن موجود
|
||||||
|
## New
|
||||||
|
### Name
|
||||||
|
addvaultwizard.new.nameInstruction=اختر اسم للمخزن
|
||||||
|
addvaultwizard.new.namePrompt=اسم المخزن
|
||||||
|
### Location
|
||||||
|
addvaultwizard.new.locationInstruction=أين يجب على Cryptomator تخزين الملفات المشفرة من قبو الخاص بك؟
|
||||||
|
addvaultwizard.new.locationLabel=موقع التخزين
|
||||||
|
addvaultwizard.new.locationPrompt=…
|
||||||
|
addvaultwizard.new.directoryPickerLabel=موقع مخصص
|
||||||
|
addvaultwizard.new.directoryPickerButton=اختر…
|
||||||
|
addvaultwizard.new.directoryPickerTitle=اختر القاموس
|
||||||
|
addvaultwizard.new.enterPassword=أدخل كلمة المرور لهذا الحساب
|
||||||
|
addvaultwizard.new.fileAlreadyExists=لا يمكن إنشاء مخزن على هذا المسار لأن بعض الملفات موجودة مسبقا.
|
||||||
|
addvaultwizard.new.invalidName=اسم المخزن غير صالح. يرجى النظر في اسم الدليل المعتاد.
|
||||||
|
### Password
|
||||||
|
addvaultwizard.new.reenterPassword=تأكيد كلمة المرور
|
||||||
|
addvaultwizard.new.passwordsMatch=كلمات المرور متطابقة!
|
||||||
|
addvaultwizard.new.passwordsDoNotMatch=كلمات المرور غير متطابقة
|
||||||
|
addvaultwizard.new.createVaultBtn=انشئ حافظة
|
||||||
|
### Recovery Key
|
||||||
|
### Information
|
||||||
|
addvault.new.readme.storageLocation.4=لو انك تحتاج مساعدة, جرب "%s".
|
||||||
|
## Existing
|
||||||
|
addvaultwizard.existing.chooseBtn=اختر…
|
||||||
|
## Success
|
||||||
|
|
||||||
|
# Remove Vault
|
||||||
|
removeVault.confirmBtn=احذف الحافظة
|
||||||
|
|
||||||
|
# Change Password
|
||||||
|
changepassword.enterNewPassword=ادخل كلمة المرور الجديدة لحافظتك
|
||||||
|
changepassword.reenterNewPassword=تأكيد كلمة المرور الجديدة
|
||||||
|
changepassword.passwordsMatch=كلمات المرور متطابقة!
|
||||||
|
changepassword.passwordsDoNotMatch=كلمات المرور غير متطابقة
|
||||||
|
|
||||||
|
# Forget Password
|
||||||
|
forgetPassword.title=نسيت كلمة المرور
|
||||||
|
forgetPassword.confirmBtn=نسيت كلمة المرور
|
||||||
|
|
||||||
|
# Unlock
|
||||||
|
unlock.title=افتح الحافظة
|
||||||
|
unlock.savePassword=احفظ كلمة المرور
|
||||||
|
unlock.unlockBtn=افتح
|
||||||
|
## Success
|
||||||
|
unlock.success.revealBtn=افتح الحافظة
|
||||||
|
|
||||||
|
# Migration
|
||||||
|
migration.title=ترقية الحافظة
|
||||||
|
## Start
|
||||||
|
migration.start.confirm=نعم, محفظتي متزامنة بالكامل
|
||||||
|
## Run
|
||||||
|
migration.run.startMigrationBtn=ترقية الحافظة
|
||||||
|
## Sucess
|
||||||
|
migration.success.unlockNow=افتح الان
|
||||||
|
|
||||||
|
# Preferences
|
||||||
|
preferences.title=تفضيلات
|
||||||
|
## General
|
||||||
|
preferences.general=عام
|
||||||
|
## Volume
|
||||||
|
preferences.volume.webdav.port=منفذ WebDav
|
||||||
|
## Updates
|
||||||
|
preferences.updates=تحديثات
|
||||||
|
preferences.updates.autoUpdateCheck=تحقق من التحديثات اوتوماتيكيا
|
||||||
|
preferences.updates.checkNowBtn=تحقق الان
|
||||||
|
|
||||||
|
# Main Window
|
||||||
|
main.preferencesBtn.tooltip=تفضيلات
|
||||||
|
## Vault List
|
||||||
|
main.vaultlist.addVaultBtn=أضِف مخزنًا
|
||||||
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
|
main.vaultDetail.lockedStatus=مغلق
|
||||||
|
main.vaultDetail.unlockBtn=افتح
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=مفتوح
|
||||||
|
main.vaultDetail.lockBtn=قفل
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=ترقية الحافظة
|
||||||
|
|
||||||
|
# Wrong File Alert
|
||||||
|
|
||||||
|
# Vault Options
|
||||||
|
## General
|
||||||
|
vaultOptions.general=عام
|
||||||
|
## Mount
|
||||||
|
|
||||||
|
# Recovery Key
|
||||||
|
|
||||||
|
# Misc
|
||||||
|
|
||||||
|
# Quit
|
||||||
@@ -41,6 +41,8 @@ addvaultwizard.new.reenterPassword=Potvrďte heslo
|
|||||||
addvaultwizard.new.passwordsMatch=Hesla se shodují!
|
addvaultwizard.new.passwordsMatch=Hesla se shodují!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Hesla se neshodují
|
addvaultwizard.new.passwordsDoNotMatch=Hesla se neshodují
|
||||||
addvaultwizard.new.createVaultBtn=Vytvořit trezor
|
addvaultwizard.new.createVaultBtn=Vytvořit trezor
|
||||||
|
### Recovery Key
|
||||||
|
addvaultwizard.new.recoveryKeyInstruction=Toto je tvůj obnovovací klíč. Uchovej jej v bezpečí, je to jediná šance, jak obnovit data, pokud ztratíš heslo.
|
||||||
### Information
|
### Information
|
||||||
addvault.new.readme.storageLocation.fileName=CO JE TOTO ZA ADRESÁŘ.rtf
|
addvault.new.readme.storageLocation.fileName=CO JE TOTO ZA ADRESÁŘ.rtf
|
||||||
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ OBSAH TREZORU ⚠️
|
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ OBSAH TREZORU ⚠️
|
||||||
@@ -126,10 +128,12 @@ main.vaultlist.emptyList.onboardingInstruction=Klikněte sem pro přidání nov
|
|||||||
main.vaultlist.contextMenu.remove=Odstranit trezor
|
main.vaultlist.contextMenu.remove=Odstranit trezor
|
||||||
main.vaultlist.addVaultBtn=Přidat trezor
|
main.vaultlist.addVaultBtn=Přidat trezor
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=UZAMKNUTO
|
main.vaultDetail.lockedStatus=UZAMKNUTO
|
||||||
main.vaultDetail.unlockedStatus=ODEMKNUTO
|
|
||||||
main.vaultDetail.unlockBtn=Odemknout
|
main.vaultDetail.unlockBtn=Odemknout
|
||||||
main.vaultDetail.optionsBtn=Možnosti trezoru
|
main.vaultDetail.optionsBtn=Možnosti trezoru
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=ODEMKNUTO
|
||||||
main.vaultDetail.accessLocation=Obsah vašeho trezoru je dostupný:
|
main.vaultDetail.accessLocation=Obsah vašeho trezoru je dostupný:
|
||||||
main.vaultDetail.revealBtn=Zobrazit jednotku
|
main.vaultDetail.revealBtn=Zobrazit jednotku
|
||||||
main.vaultDetail.lockBtn=Zamknout
|
main.vaultDetail.lockBtn=Zamknout
|
||||||
@@ -138,6 +142,8 @@ main.vaultDetail.bytesPerSecondWritten=zapsáno:
|
|||||||
main.vaultDetail.throughput.idle=nečinný
|
main.vaultDetail.throughput.idle=nečinný
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Upgrade trezoru
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=neznámý soubor
|
wrongFileAlert.title=neznámý soubor
|
||||||
@@ -145,14 +151,22 @@ wrongFileAlert.btn=OK
|
|||||||
wrongFileAlert.information=Zkoušíte přidat soubor či adresář, který zřejmě není trezorem Cryptomatoru. Pro zašifrování vašich dat vytvořte a odemkněte trezor.
|
wrongFileAlert.information=Zkoušíte přidat soubor či adresář, který zřejmě není trezorem Cryptomatoru. Pro zašifrování vašich dat vytvořte a odemkněte trezor.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Obecné
|
vaultOptions.general=Obecné
|
||||||
vaultOptions.general.changePasswordBtn=Změnit heslo
|
vaultOptions.general.changePasswordBtn=Změnit heslo
|
||||||
|
vaultOptions.general.showRecoveryKeyBtn=Zobrazit klíč k obnově
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Připojení
|
vaultOptions.mount=Připojení
|
||||||
vaultOptions.mount.readonly=Pouze pro čtení
|
vaultOptions.mount.readonly=Pouze pro čtení
|
||||||
vaultOptions.mount.driveName=Jméno jednotky
|
vaultOptions.mount.driveName=Jméno jednotky
|
||||||
vaultOptions.mount.customMountFlags=Vlastní parametry
|
vaultOptions.mount.customMountFlags=Vlastní parametry
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=obsazené
|
||||||
|
vaultOptions.mount.winDirChooser=Vyberte prázdný adresář
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
|
recoveryKey.title=Klíč k obnově
|
||||||
|
recoveryKey.enterPassword.prompt=Zadejte své heslo pro zobrazení obnovovacího klíče pro "%s":
|
||||||
|
recoveryKey.display.message=Klíč k obnově "%s":
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
passwordStrength.messageLabel.0=velmi slabé
|
passwordStrength.messageLabel.0=velmi slabé
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ addvaultwizard.new.locationInstruction=Wo soll Cryptomator die verschlüsselten
|
|||||||
addvaultwizard.new.locationLabel=Speicherort
|
addvaultwizard.new.locationLabel=Speicherort
|
||||||
addvaultwizard.new.locationPrompt=…
|
addvaultwizard.new.locationPrompt=…
|
||||||
addvaultwizard.new.directoryPickerLabel=Eigener Ort
|
addvaultwizard.new.directoryPickerLabel=Eigener Ort
|
||||||
addvaultwizard.new.directoryPickerButton=Durchsuchen…
|
addvaultwizard.new.directoryPickerButton=Durchsuchen …
|
||||||
addvaultwizard.new.directoryPickerTitle=Wähle ein Verzeichnis
|
addvaultwizard.new.directoryPickerTitle=Wähle ein Verzeichnis
|
||||||
addvaultwizard.new.enterPassword=Vergib ein Passwort für den Tresor
|
addvaultwizard.new.enterPassword=Vergib ein Passwort für den Tresor
|
||||||
addvaultwizard.new.fileAlreadyExists=Der Tresor konnte nicht erstellt werden, da der Speicherort bereits belegt ist.
|
addvaultwizard.new.fileAlreadyExists=Der Tresor konnte nicht erstellt werden, da der Speicherort bereits belegt ist.
|
||||||
@@ -40,38 +40,39 @@ addvaultwizard.new.ioException=Auf das ausgewählte Verzeichnis kann nicht zugeg
|
|||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Bestätige das Passwort
|
addvaultwizard.new.reenterPassword=Bestätige das Passwort
|
||||||
addvaultwizard.new.passwordsMatch=Passwörter stimmen überein!
|
addvaultwizard.new.passwordsMatch=Passwörter stimmen überein!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Passwörter unterscheiden sich
|
addvaultwizard.new.passwordsDoNotMatch=Passwörter stimmen nicht überein
|
||||||
addvaultwizard.new.createVaultBtn=Tresor erstellen
|
addvaultwizard.new.createVaultBtn=Tresor erstellen
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Dies ist dein Wiederherstellungsschlüssel. Bewahre ihn sicher auf. Ohne ihn gibt es keine Möglichkeit deine Daten wiederherzustellen, wenn du dein Kennwort verloren hast.
|
addvaultwizard.new.recoveryKeyInstruction=Dies ist dein Wiederherstellungsschlüssel. Bewahre ihn sicher auf. Ohne ihn gibt es keine Möglichkeit deine Daten wiederherzustellen, wenn du dein Kennwort verloren hast.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, ich habe eine Datensicherung diese Wiederherstellungsschlüssels durchgeführt
|
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, ich habe eine Datensicherung dieses Wiederherstellungsschlüssels durchgeführt
|
||||||
### Information
|
### Information
|
||||||
addvault.new.readme.storageLocation.fileName=WAS BEDEUTET DIESER ORDNER.rtf
|
addvault.new.readme.storageLocation.fileName=WAS BEDEUTET DIESER ORDNER.rtf
|
||||||
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ TRESORDATEIEN ⚠️
|
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ TRESORDATEIEN ⚠️
|
||||||
addvault.new.readme.storageLocation.2=Dies ist der Speicherort deines Tresor. Ändere {\\b KEINE} Dateien in diesem Verzeichnis.
|
addvault.new.readme.storageLocation.2=Dies ist der Speicherort deines Tresors. Ändere {\\b KEINE} Dateien in diesem Verzeichnis.
|
||||||
addvault.new.readme.storageLocation.3=Wenn du Dateien mit Cryptomator verschlüsseln möchtest, entsperre den Tresor und verwende das zur Verfügung gestellte Laufwerk.
|
addvault.new.readme.storageLocation.3=Wenn du Dateien mit Cryptomator verschlüsseln möchtest, entsperre den Tresor und verwende das zur Verfügung gestellte Laufwerk.
|
||||||
addvault.new.readme.storageLocation.4=Wenn du Hilfe brauchst, versuche %s.
|
addvault.new.readme.storageLocation.4=Falls du Hilfe brauchst, versuche %s.
|
||||||
addvault.new.readme.accessLocation.fileName=WILLKOMMEN ZUM TRESOR.rtf
|
addvault.new.readme.accessLocation.fileName=WILLKOMMEN ZUM TRESOR.rtf
|
||||||
addvault.new.readme.accessLocation.1=\\fs40\\qc 🔐️ VERSCHLÜSSELTES LAUFWERK 🔐️
|
addvault.new.readme.accessLocation.1=\\fs40\\qc 🔐️ VERSCHLÜSSELTES LAUFWERK 🔐️
|
||||||
addvault.new.readme.accessLocation.2=Dies ist dein Tresorlaufwerk. Alle Dateien, die zu diesem Laufwerk hinzugefügt werden, werden mit Cryptomator verschlüsselt. Um zu einem späteren Zeitpunkt auf dieses Laufwerk zuzugreifen, entsperre es einfach wieder aus der Cryptomator-Anwendung heraus.
|
addvault.new.readme.accessLocation.2=Dies ist dein Tresorlaufwerk. Alle zu diesem Laufwerk hinzugefügten Dateien werden mit Cryptomator verschlüsselt. Um zu einem späteren Zeitpunkt auf dieses Laufwerk zuzugreifen, entsperre es einfach wieder aus der Cryptomator-Anwendung heraus.
|
||||||
addvault.new.readme.accessLocation.3=Diese Datei kannst du löschen.
|
addvault.new.readme.accessLocation.3=Diese Datei kannst du löschen.
|
||||||
## Existing
|
## Existing
|
||||||
addvaultwizard.existing.instruction=Bitte wähle die Datei "masterkey.cryptomator" des existierenden Tresors aus.
|
addvaultwizard.existing.instruction=Wähle die Datei „masterkey.cryptomator“ deines vorhandenen Tresors aus.
|
||||||
addvaultwizard.existing.chooseBtn=Durchsuchen…
|
addvaultwizard.existing.chooseBtn=Durchsuchen…
|
||||||
addvaultwizard.existing.filePickerTitle=Masterkey-Datei auswählen
|
addvaultwizard.existing.filePickerTitle=Masterkey-Datei auswählen
|
||||||
addvaultwizard.existing.error=Der Tresor „%s“ ist kein gültiger Tresor und kann nicht hinzugefügt werden. Weitere Informationen findest du im Log.
|
addvaultwizard.existing.error=Der Tresor „%s“ ist kein gültiger Tresor und kann nicht hinzugefügt werden. Weitere Informationen findest du im Diagnoseprotokoll.
|
||||||
## Success
|
## Success
|
||||||
addvaultwizard.success.nextStepsInstructions=Tresor "%s" hinzugefügt.\nEntsperre diesen Tresor jetzt, um auf die Inhalte zugreifen oder welche hinzufügen zu können. Andernfalls entsperre diesen Tresor zu einem späteren Zeitpunkt.
|
addvaultwizard.success.nextStepsInstructions=Tresor „%s“ hinzugefügt.\nUm auf Inhalte zuzugreifen oder welche hinzuzufügen, musst du den Tresor entsperren. Du kannst ihn aber auch zu jedem späteren Zeitpunkt entsperren.
|
||||||
addvaultwizard.success.unlockNow=Jetzt entsperren
|
addvaultwizard.success.unlockNow=Jetzt entsperren
|
||||||
|
|
||||||
# Remove Vault
|
# Remove Vault
|
||||||
removeVault.title=Tresor entfernen
|
removeVault.title=Tresor entfernen
|
||||||
removeVault.information=Dein Tresor wird nicht gelöscht, er wird lediglich aus der Liste entfernt. Falls du dich später umentscheidest, kannst du ihn später einfach wieder hinzufügen.
|
removeVault.information=Dein Tresor wird nicht gelöscht, sondern lediglich aus Cryptomators Tresorliste entfernt. Du kannst ihn daher später jederzeit wieder hinzufügen.
|
||||||
removeVault.confirmBtn=Tresor entfernen
|
removeVault.confirmBtn=Tresor entfernen
|
||||||
|
|
||||||
# Change Password
|
# Change Password
|
||||||
changepassword.title=Password ändern
|
changepassword.title=Password ändern
|
||||||
changepassword.enterOldPassword=Gib dein derzeitiges Passwort für "%s" ein
|
changepassword.enterOldPassword=Gib dein derzeitiges Passwort für "%s" ein
|
||||||
changepassword.enterNewPassword=Vergib ein neues Passwort
|
changepassword.enterNewPassword=Gib ein neues Tresorpasswort ein
|
||||||
changepassword.reenterNewPassword=Bestätige das neue Passwort
|
changepassword.reenterNewPassword=Bestätige das neue Passwort
|
||||||
changepassword.passwordsMatch=Passwörter stimmen überein!
|
changepassword.passwordsMatch=Passwörter stimmen überein!
|
||||||
changepassword.passwordsDoNotMatch=Passwörter stimmen nicht überein
|
changepassword.passwordsDoNotMatch=Passwörter stimmen nicht überein
|
||||||
@@ -83,7 +84,7 @@ forgetPassword.information=Dies löscht das gespeicherte Passwort dieses Tresors
|
|||||||
forgetPassword.confirmBtn=Passwort vergessen
|
forgetPassword.confirmBtn=Passwort vergessen
|
||||||
|
|
||||||
# Unlock
|
# Unlock
|
||||||
unlock.title=Tresor öffnen
|
unlock.title=Tresor entsperren
|
||||||
unlock.passwordPrompt=Gib das Passwort für "%s" ein:
|
unlock.passwordPrompt=Gib das Passwort für "%s" ein:
|
||||||
unlock.savePassword=Passwort speichern
|
unlock.savePassword=Passwort speichern
|
||||||
unlock.unlockBtn=Entsperren
|
unlock.unlockBtn=Entsperren
|
||||||
@@ -94,13 +95,13 @@ unlock.success.revealBtn=Tresor anzeigen
|
|||||||
# Migration
|
# Migration
|
||||||
migration.title=Tresor aktualisieren
|
migration.title=Tresor aktualisieren
|
||||||
## Start
|
## Start
|
||||||
migration.start.prompt=Dein Tresor "%s" muss auf ein neueres Format aktualisiert werden. Stell bitte sicher, dass dieser Tresor vollständig synchronisiert ist.
|
migration.start.prompt=Dein Tresor „%s“ muss auf ein neueres Format aktualisiert werden. Stell bitte zuvor sicher, dass dieser Tresor vollständig synchronisiert ist.
|
||||||
migration.start.confirm=Ja, mein Tresor ist vollständig synchronisiert
|
migration.start.confirm=Ja, mein Tresor ist vollständig synchronisiert
|
||||||
## Run
|
## Run
|
||||||
migration.run.enterPassword=Gib das Passwort für "%s" ein
|
migration.run.enterPassword=Gib das Passwort für „%s“ ein
|
||||||
migration.run.startMigrationBtn=Tresor migrieren
|
migration.run.startMigrationBtn=Tresor migrieren
|
||||||
## Sucess
|
## Sucess
|
||||||
migration.success.nextStepsInstructions="%s" erfolgreich migriert.\nDu kannst den Tresor jetzt entsperren.
|
migration.success.nextStepsInstructions=„%s“ erfolgreich migriert.\nDu kannst deinen Tresor jetzt entsperren.
|
||||||
migration.success.unlockNow=Jetzt entsperren
|
migration.success.unlockNow=Jetzt entsperren
|
||||||
|
|
||||||
# Preferences
|
# Preferences
|
||||||
@@ -109,7 +110,7 @@ preferences.title=Einstellungen
|
|||||||
preferences.general=Allgemein
|
preferences.general=Allgemein
|
||||||
preferences.general.theme=Erscheinungsbild
|
preferences.general.theme=Erscheinungsbild
|
||||||
preferences.general.startHidden=Cryptomator im Hintergrund starten
|
preferences.general.startHidden=Cryptomator im Hintergrund starten
|
||||||
preferences.general.debugLogging=Debug-Protokollierung
|
preferences.general.debugLogging=Diagnoseprotokoll aktivieren
|
||||||
## Volume
|
## Volume
|
||||||
preferences.volume=Tresorlaufwerk
|
preferences.volume=Tresorlaufwerk
|
||||||
preferences.volume.type=Laufwerkstyp
|
preferences.volume.type=Laufwerkstyp
|
||||||
@@ -119,7 +120,7 @@ preferences.volume.webdav.scheme=WebDAV-Schema
|
|||||||
preferences.updates=Updates
|
preferences.updates=Updates
|
||||||
preferences.updates.currentVersion=Aktuelle Version: %s
|
preferences.updates.currentVersion=Aktuelle Version: %s
|
||||||
preferences.updates.autoUpdateCheck=Automatisch nach Updates suchen
|
preferences.updates.autoUpdateCheck=Automatisch nach Updates suchen
|
||||||
preferences.updates.checkNowBtn=Jetzt prüfen
|
preferences.updates.checkNowBtn=Jetzt suchen
|
||||||
preferences.updates.updateAvailable=Update auf Version %s verfügbar.
|
preferences.updates.updateAvailable=Update auf Version %s verfügbar.
|
||||||
|
|
||||||
# Main Window
|
# Main Window
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Klicke hier, um einen Tresor hinz
|
|||||||
main.vaultlist.contextMenu.remove=Tresor entfernen
|
main.vaultlist.contextMenu.remove=Tresor entfernen
|
||||||
main.vaultlist.addVaultBtn=Tresor hinzufügen
|
main.vaultlist.addVaultBtn=Tresor hinzufügen
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=GESPERRT
|
main.vaultDetail.lockedStatus=GESPERRT
|
||||||
main.vaultDetail.unlockedStatus=ENTSPERRT
|
|
||||||
main.vaultDetail.unlockBtn=Entsperren
|
main.vaultDetail.unlockBtn=Entsperren
|
||||||
main.vaultDetail.optionsBtn=Tresoroptionen
|
main.vaultDetail.optionsBtn=Tresoroptionen
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=ENTSPERRT
|
||||||
main.vaultDetail.accessLocation=Dein Tresorinhalt ist hier erreichbar:
|
main.vaultDetail.accessLocation=Dein Tresorinhalt ist hier erreichbar:
|
||||||
main.vaultDetail.revealBtn=Laufwerk anzeigen
|
main.vaultDetail.revealBtn=Laufwerk anzeigen
|
||||||
main.vaultDetail.lockBtn=Sperren
|
main.vaultDetail.lockBtn=Sperren
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=geschrieben:
|
|||||||
main.vaultDetail.throughput.idle=Leerlauf
|
main.vaultDetail.throughput.idle=Leerlauf
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Tresor aktualisieren
|
||||||
|
main.vaultDetail.migratePrompt=Dein Tresor muss auf ein neues Format aktualisiert werden, bevor Du auf ihn zugreifen kannst
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Unbekannte Datei
|
wrongFileAlert.title=Unbekannte Datei
|
||||||
@@ -149,17 +155,21 @@ wrongFileAlert.btn=OK
|
|||||||
wrongFileAlert.information=Du hast versucht, eine Datei oder einen Ordner hinzuzufügen, der scheinbar kein Cryptomator-Tresor ist. Um Dateien zu verschlüsseln, erstelle und entsperre einen Tresor.
|
wrongFileAlert.information=Du hast versucht, eine Datei oder einen Ordner hinzuzufügen, der scheinbar kein Cryptomator-Tresor ist. Um Dateien zu verschlüsseln, erstelle und entsperre einen Tresor.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Allgemein
|
vaultOptions.general=Allgemein
|
||||||
vaultOptions.general.changePasswordBtn=Passwort ändern
|
vaultOptions.general.changePasswordBtn=Passwort ändern
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Wiederherstellungsschlüssel anzeigen
|
vaultOptions.general.showRecoveryKeyBtn=Wiederherstellungsschlüssel anzeigen
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Laufwerk
|
vaultOptions.mount=Laufwerk
|
||||||
vaultOptions.mount.readonly=Schreibgeschützt
|
vaultOptions.mount.readonly=Schreibgeschützt
|
||||||
vaultOptions.mount.driveName=Laufwerksname
|
vaultOptions.mount.driveName=Laufwerksname
|
||||||
vaultOptions.mount.customMountFlags=Benutzerdefinierte Mount-Flags
|
vaultOptions.mount.customMountFlags=Benutzerdefinierte Mount-Flags
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=belegt
|
||||||
|
vaultOptions.mount.winDirChooser=Wähle ein leeres Verzeichnis
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Wiederherstellungsschlüssel
|
recoveryKey.title=Wiederherstellungsschlüssel
|
||||||
recoveryKey.enterPassword.prompt=Gib Dein Kennwort ein um den Wiederherstellungsschlüssel für „%s“ anzuzeigen:
|
recoveryKey.enterPassword.prompt=Gib dein Kennwort ein, um den Wiederherstellungsschlüssel für „%s“ anzuzeigen:
|
||||||
recoveryKey.display.message=Wiederherstellungsschlüssel für „%s“:
|
recoveryKey.display.message=Wiederherstellungsschlüssel für „%s“:
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
### Name
|
### Name
|
||||||
### Location
|
### Location
|
||||||
### Password
|
### Password
|
||||||
|
### Recovery Key
|
||||||
### Information
|
### Information
|
||||||
## Existing
|
## Existing
|
||||||
## Success
|
## Success
|
||||||
@@ -37,10 +38,15 @@
|
|||||||
# Main Window
|
# Main Window
|
||||||
## Vault List
|
## Vault List
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
|
### Unlocked
|
||||||
|
### Needs Migration
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
|
## Mount
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
|
|
||||||
|
|||||||
@@ -36,12 +36,13 @@ addvaultwizard.new.directoryPickerTitle=Seleccionar directorio
|
|||||||
addvaultwizard.new.enterPassword=Ingresar una contraseña para la bóveda
|
addvaultwizard.new.enterPassword=Ingresar una contraseña para la bóveda
|
||||||
addvaultwizard.new.fileAlreadyExists=La bóveda no puede crearse en esta ruta porque ya existe un objeto.
|
addvaultwizard.new.fileAlreadyExists=La bóveda no puede crearse en esta ruta porque ya existe un objeto.
|
||||||
addvaultwizard.new.invalidName=Nombre de bóveda inválido. Considere un nombre de directorio regular.
|
addvaultwizard.new.invalidName=Nombre de bóveda inválido. Considere un nombre de directorio regular.
|
||||||
addvaultwizard.new.ioException=El directorio seleccionado falló una prueba básica. Asegurarse de tener los derechos de acceso apropiados y que nada interfiere con Cryptomator.
|
addvaultwizard.new.ioException=El directorio seleccionado falló una prueba básica. Asegúrese de tener los derechos de acceso apropiados y que nada interfiere con Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Confirmar la contraseña
|
addvaultwizard.new.reenterPassword=Confirmar la contraseña
|
||||||
addvaultwizard.new.passwordsMatch=¡Las contraseñas coinciden!
|
addvaultwizard.new.passwordsMatch=¡Las contraseñas coinciden!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Las contraseñas no coinciden
|
addvaultwizard.new.passwordsDoNotMatch=Las contraseñas no coinciden
|
||||||
addvaultwizard.new.createVaultBtn=Crear bóveda
|
addvaultwizard.new.createVaultBtn=Crear bóveda
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Esta es la clave de recuperación. Se debe mantener segura, es la única oportunidad de recuperar los datos si se pierde la contraseña.
|
addvaultwizard.new.recoveryKeyInstruction=Esta es la clave de recuperación. Se debe mantener segura, es la única oportunidad de recuperar los datos si se pierde la contraseña.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Sí, he hecho una copia de seguridad de esta clave de recuperación
|
addvaultwizard.new.recoveryKeySavedCheckbox=Sí, he hecho una copia de seguridad de esta clave de recuperación
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Hacer clic aquí para añadir una
|
|||||||
main.vaultlist.contextMenu.remove=Eliminar bóveda
|
main.vaultlist.contextMenu.remove=Eliminar bóveda
|
||||||
main.vaultlist.addVaultBtn=Añadir bóveda
|
main.vaultlist.addVaultBtn=Añadir bóveda
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=BLOQUEADO
|
main.vaultDetail.lockedStatus=BLOQUEADO
|
||||||
main.vaultDetail.unlockedStatus=DESBLOQUEADO
|
|
||||||
main.vaultDetail.unlockBtn=Desbloquear
|
main.vaultDetail.unlockBtn=Desbloquear
|
||||||
main.vaultDetail.optionsBtn=Opciones de la bóveda
|
main.vaultDetail.optionsBtn=Opciones de la bóveda
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=DESBLOQUEADO
|
||||||
main.vaultDetail.accessLocation=El contenido de la bóveda es accesible aquí:
|
main.vaultDetail.accessLocation=El contenido de la bóveda es accesible aquí:
|
||||||
main.vaultDetail.revealBtn=Revelar unidad
|
main.vaultDetail.revealBtn=Revelar unidad
|
||||||
main.vaultDetail.lockBtn=Bloquear
|
main.vaultDetail.lockBtn=Bloquear
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=escrito:
|
|||||||
main.vaultDetail.throughput.idle=inactivo
|
main.vaultDetail.throughput.idle=inactivo
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Mejorar bóveda
|
||||||
|
main.vaultDetail.migratePrompt=Su bóveda necesita ser actualizada a un formato nuevo antes de poder acceder a ella
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Archivo desconocido
|
wrongFileAlert.title=Archivo desconocido
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=Ok
|
|||||||
wrongFileAlert.information=Se ha intentado añadir un archivo o carpeta que no parece ser una bóveda de Cryptomator. Para cifrar los datos, crear y desbloquear una bóveda.
|
wrongFileAlert.information=Se ha intentado añadir un archivo o carpeta que no parece ser una bóveda de Cryptomator. Para cifrar los datos, crear y desbloquear una bóveda.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=General
|
vaultOptions.general=General
|
||||||
vaultOptions.general.changePasswordBtn=Cambiar contraseña
|
vaultOptions.general.changePasswordBtn=Cambiar contraseña
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Mostrar la clave de recuperación
|
vaultOptions.general.showRecoveryKeyBtn=Mostrar la clave de recuperación
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Montaje
|
vaultOptions.mount=Montaje
|
||||||
vaultOptions.mount.readonly=Sólo lectura
|
vaultOptions.mount.readonly=Sólo lectura
|
||||||
vaultOptions.mount.driveName=Nombre de la unidad
|
vaultOptions.mount.driveName=Nombre de la unidad
|
||||||
vaultOptions.mount.customMountFlags=Opciones de montaje personalizadas
|
vaultOptions.mount.customMountFlags=Opciones de montaje personalizadas
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=ocupado
|
||||||
|
vaultOptions.mount.winDirChooser=Elija un directorio vacío
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Clave de recuperación
|
recoveryKey.title=Clave de recuperación
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ addvaultwizard.welcome.newButton=Créer un nouveau coffre
|
|||||||
addvaultwizard.welcome.existingButton=Ouvrir un coffre existant
|
addvaultwizard.welcome.existingButton=Ouvrir un coffre existant
|
||||||
## New
|
## New
|
||||||
### Name
|
### Name
|
||||||
addvaultwizard.new.nameInstruction=Choisissez un nom pour le coffre
|
addvaultwizard.new.nameInstruction=Choisir un nom pour le coffre
|
||||||
addvaultwizard.new.namePrompt=Nom du coffre
|
addvaultwizard.new.namePrompt=Nom du coffre
|
||||||
### Location
|
### Location
|
||||||
addvaultwizard.new.locationInstruction=Où Cryptomator doit-il stocker les fichiers chiffrés de votre coffre ?
|
addvaultwizard.new.locationInstruction=Où Cryptomator doit-il stocker les fichiers chiffrés de votre coffre ?
|
||||||
@@ -36,12 +36,13 @@ addvaultwizard.new.directoryPickerTitle=Choisissez le répertoire
|
|||||||
addvaultwizard.new.enterPassword=Saisissez un mot de passe pour le coffre
|
addvaultwizard.new.enterPassword=Saisissez un mot de passe pour le coffre
|
||||||
addvaultwizard.new.fileAlreadyExists=Le coffre ne peut pas être créé sur ce chemin car un objet existe déjà.
|
addvaultwizard.new.fileAlreadyExists=Le coffre ne peut pas être créé sur ce chemin car un objet existe déjà.
|
||||||
addvaultwizard.new.invalidName=Nom de coffre invalide. Préférez un nom de répertoire habituel.
|
addvaultwizard.new.invalidName=Nom de coffre invalide. Préférez un nom de répertoire habituel.
|
||||||
addvaultwizard.new.ioException=Le répertoire sélectionné a échoué à un test basique. Assurez-vous d'avoir les droits d'accès appropriés et que rien n'interfère avec Cryptomator.
|
addvaultwizard.new.ioException=Le répertoire sélectionné a échoué un test de base. Assurez-vous d'avoir les droits d'accès appropriés et que rien n'interfère avec Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Confirmez le mot de passe
|
addvaultwizard.new.reenterPassword=Confirmez le mot de passe
|
||||||
addvaultwizard.new.passwordsMatch=Mots de passe identiques !
|
addvaultwizard.new.passwordsMatch=Mots de passe identiques !
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Les mots de passe ne correspondent pas
|
addvaultwizard.new.passwordsDoNotMatch=Les mots de passe ne correspondent pas
|
||||||
addvaultwizard.new.createVaultBtn=Créer un coffre
|
addvaultwizard.new.createVaultBtn=Créer un coffre
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=C'est votre clé de récupération. Gardez-la en sécurité, c'est votre seule chance de récupérer vos données si vous perdez votre mot de passe.
|
addvaultwizard.new.recoveryKeyInstruction=C'est votre clé de récupération. Gardez-la en sécurité, c'est votre seule chance de récupérer vos données si vous perdez votre mot de passe.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Oui, j'ai fait une sauvegarde sécurisée de cette clé de récupération
|
addvaultwizard.new.recoveryKeySavedCheckbox=Oui, j'ai fait une sauvegarde sécurisée de cette clé de récupération
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Cliquez ici pour ajouter un coffr
|
|||||||
main.vaultlist.contextMenu.remove=Supprimer le coffre
|
main.vaultlist.contextMenu.remove=Supprimer le coffre
|
||||||
main.vaultlist.addVaultBtn=Ajouter un coffre
|
main.vaultlist.addVaultBtn=Ajouter un coffre
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=VERROUILLÉ
|
main.vaultDetail.lockedStatus=VERROUILLÉ
|
||||||
main.vaultDetail.unlockedStatus=DÉVERROUILLÉ
|
|
||||||
main.vaultDetail.unlockBtn=Déverrouiller
|
main.vaultDetail.unlockBtn=Déverrouiller
|
||||||
main.vaultDetail.optionsBtn=Option du coffre
|
main.vaultDetail.optionsBtn=Option du coffre
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=DÉVERROUILLÉ
|
||||||
main.vaultDetail.accessLocation=Le contenu de votre coffre est accessible ici :
|
main.vaultDetail.accessLocation=Le contenu de votre coffre est accessible ici :
|
||||||
main.vaultDetail.revealBtn=Révéler le lecteur
|
main.vaultDetail.revealBtn=Révéler le lecteur
|
||||||
main.vaultDetail.lockBtn=Verrouiller
|
main.vaultDetail.lockBtn=Verrouiller
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=écriture :
|
|||||||
main.vaultDetail.throughput.idle=inactif
|
main.vaultDetail.throughput.idle=inactif
|
||||||
main.vaultDetail.throughput.kbps=%.1fkB/s
|
main.vaultDetail.throughput.kbps=%.1fkB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1fMB/s
|
main.vaultDetail.throughput.mbps=%.1fMB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Mettre à jour le coffre
|
||||||
|
main.vaultDetail.migratePrompt=Votre coffre doit être converti dans un nouveau format avant d'y accéder
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Fichier inconnu
|
wrongFileAlert.title=Fichier inconnu
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=Ok
|
|||||||
wrongFileAlert.information=Vous avez essayé d’ajouter un fichier ou un dossier qui ne semble pas être un coffre Cryptomator. Pour chiffrer vos données, créez un coffre et déverrouillez-le.
|
wrongFileAlert.information=Vous avez essayé d’ajouter un fichier ou un dossier qui ne semble pas être un coffre Cryptomator. Pour chiffrer vos données, créez un coffre et déverrouillez-le.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Général
|
vaultOptions.general=Général
|
||||||
vaultOptions.general.changePasswordBtn=Modifier le mot de passe
|
vaultOptions.general.changePasswordBtn=Modifier le mot de passe
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Afficher la clé de récupération
|
vaultOptions.general.showRecoveryKeyBtn=Afficher la clé de récupération
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Montage
|
vaultOptions.mount=Montage
|
||||||
vaultOptions.mount.readonly=Lecture seule
|
vaultOptions.mount.readonly=Lecture seule
|
||||||
vaultOptions.mount.driveName=Nom du lecteur
|
vaultOptions.mount.driveName=Nom du lecteur
|
||||||
vaultOptions.mount.customMountFlags=Drapeau de montage personnalisé
|
vaultOptions.mount.customMountFlags=Drapeau de montage personnalisé
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=occupé
|
||||||
|
vaultOptions.mount.winDirChooser=Choisir un répertoire vide
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Clé de récupération
|
recoveryKey.title=Clé de récupération
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
### Name
|
### Name
|
||||||
### Location
|
### Location
|
||||||
### Password
|
### Password
|
||||||
|
### Recovery Key
|
||||||
### Information
|
### Information
|
||||||
## Existing
|
## Existing
|
||||||
## Success
|
## Success
|
||||||
@@ -37,10 +38,15 @@
|
|||||||
# Main Window
|
# Main Window
|
||||||
## Vault List
|
## Vault List
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
|
### Unlocked
|
||||||
|
### Needs Migration
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
|
## Mount
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
|
|
||||||
|
|||||||
@@ -36,12 +36,13 @@ addvaultwizard.new.directoryPickerTitle=Seleziona cartella
|
|||||||
addvaultwizard.new.enterPassword=Inserisci una password per la cassaforte
|
addvaultwizard.new.enterPassword=Inserisci una password per la cassaforte
|
||||||
addvaultwizard.new.fileAlreadyExists=La cassaforte non può essere creata in questo percorso perché un oggetto esiste già.
|
addvaultwizard.new.fileAlreadyExists=La cassaforte non può essere creata in questo percorso perché un oggetto esiste già.
|
||||||
addvaultwizard.new.invalidName=Nome della cassaforte non valido. Si prega di considerare un nome di directory regolare.
|
addvaultwizard.new.invalidName=Nome della cassaforte non valido. Si prega di considerare un nome di directory regolare.
|
||||||
addvaultwizard.new.ioException=La cartella selezionata non ha avuto successo per un test di base. Assicurati di avere i diritti di accesso adeguati e che nulla interferisca con Cryptomator.
|
addvaultwizard.new.ioException=La cartella selezionata non ha superato un test di base. Assicurati di avere i diritti di accesso adeguati e che nulla interferisca con Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Conferma Password
|
addvaultwizard.new.reenterPassword=Conferma Password
|
||||||
addvaultwizard.new.passwordsMatch=Le password corrispondono!
|
addvaultwizard.new.passwordsMatch=Le password corrispondono!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Le password non corrispondono
|
addvaultwizard.new.passwordsDoNotMatch=Le password non corrispondono
|
||||||
addvaultwizard.new.createVaultBtn=Crea Cassaforte
|
addvaultwizard.new.createVaultBtn=Crea Cassaforte
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Questa è la tua chiave di recupero. Tienilo al sicuro, è la tua unica possibilità di recuperare i tuoi dati se perdi la password.
|
addvaultwizard.new.recoveryKeyInstruction=Questa è la tua chiave di recupero. Tienilo al sicuro, è la tua unica possibilità di recuperare i tuoi dati se perdi la password.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Sì, ho fatto un backup sicuro di questa chiave di recupero
|
addvaultwizard.new.recoveryKeySavedCheckbox=Sì, ho fatto un backup sicuro di questa chiave di recupero
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Clicca qui per aggiungere una cas
|
|||||||
main.vaultlist.contextMenu.remove=Rimuovi Cassaforte
|
main.vaultlist.contextMenu.remove=Rimuovi Cassaforte
|
||||||
main.vaultlist.addVaultBtn=Aggiungi Cassaforte
|
main.vaultlist.addVaultBtn=Aggiungi Cassaforte
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=BLOCCATO
|
main.vaultDetail.lockedStatus=BLOCCATO
|
||||||
main.vaultDetail.unlockedStatus=SBLOCCATO
|
|
||||||
main.vaultDetail.unlockBtn=Sblocca
|
main.vaultDetail.unlockBtn=Sblocca
|
||||||
main.vaultDetail.optionsBtn=Opzioni Cassaforte
|
main.vaultDetail.optionsBtn=Opzioni Cassaforte
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=SBLOCCATO
|
||||||
main.vaultDetail.accessLocation=I contenuti della tua cassaforte sono accessibili qui:
|
main.vaultDetail.accessLocation=I contenuti della tua cassaforte sono accessibili qui:
|
||||||
main.vaultDetail.revealBtn=Visualizza disco
|
main.vaultDetail.revealBtn=Visualizza disco
|
||||||
main.vaultDetail.lockBtn=Blocca
|
main.vaultDetail.lockBtn=Blocca
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=scrittura:
|
|||||||
main.vaultDetail.throughput.idle=inattivo
|
main.vaultDetail.throughput.idle=inattivo
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Aggiorna la cassaforte
|
||||||
|
main.vaultDetail.migratePrompt=Prima di potervi accedere la tua cassaforte deve essere aggiornata al nuovo formato
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=File sconosciuto
|
wrongFileAlert.title=File sconosciuto
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=OK
|
|||||||
wrongFileAlert.information=Hai provato ad aggiungere un file o una cartella che non sembra essere una cassaforte di Cryptomator. Per crittografare i tuoi dati, creare e sbloccare una cassaforte.
|
wrongFileAlert.information=Hai provato ad aggiungere un file o una cartella che non sembra essere una cassaforte di Cryptomator. Per crittografare i tuoi dati, creare e sbloccare una cassaforte.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Generali
|
vaultOptions.general=Generali
|
||||||
vaultOptions.general.changePasswordBtn=Modifica password
|
vaultOptions.general.changePasswordBtn=Modifica password
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Visualizza la chiave di recupero
|
vaultOptions.general.showRecoveryKeyBtn=Visualizza la chiave di recupero
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Montaggio
|
vaultOptions.mount=Montaggio
|
||||||
vaultOptions.mount.readonly=Sola lettura
|
vaultOptions.mount.readonly=Sola lettura
|
||||||
vaultOptions.mount.driveName=Nome drive
|
vaultOptions.mount.driveName=Nome drive
|
||||||
vaultOptions.mount.customMountFlags=Opzioni personalizzate
|
vaultOptions.mount.customMountFlags=Opzioni personalizzate
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=occupato
|
||||||
|
vaultOptions.mount.winDirChooser=Scegli una directory vuota
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Chiave di recupero
|
recoveryKey.title=Chiave di recupero
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ addvaultwizard.new.reenterPassword=パスワードの確認
|
|||||||
addvaultwizard.new.passwordsMatch=パスワードが一致しました!
|
addvaultwizard.new.passwordsMatch=パスワードが一致しました!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=パスワードが一致しません
|
addvaultwizard.new.passwordsDoNotMatch=パスワードが一致しません
|
||||||
addvaultwizard.new.createVaultBtn=金庫を作成
|
addvaultwizard.new.createVaultBtn=金庫を作成
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=これは、あなたの回復キーです。大切に保管してください、パスワードを忘れてしまった場合でもデータを復元できる唯一の方法です。
|
addvaultwizard.new.recoveryKeyInstruction=これは、あなたの回復キーです。大切に保管してください、パスワードを忘れてしまった場合でもデータを復元できる唯一の方法です。
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=はい、回復キーを大切に保管しました
|
addvaultwizard.new.recoveryKeySavedCheckbox=はい、回復キーを大切に保管しました
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=ここをクリックして金庫
|
|||||||
main.vaultlist.contextMenu.remove=金庫を削除
|
main.vaultlist.contextMenu.remove=金庫を削除
|
||||||
main.vaultlist.addVaultBtn=金庫を追加
|
main.vaultlist.addVaultBtn=金庫を追加
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=施錠済み
|
main.vaultDetail.lockedStatus=施錠済み
|
||||||
main.vaultDetail.unlockedStatus=解錠済み
|
|
||||||
main.vaultDetail.unlockBtn=解錠
|
main.vaultDetail.unlockBtn=解錠
|
||||||
main.vaultDetail.optionsBtn=金庫のオプション
|
main.vaultDetail.optionsBtn=金庫のオプション
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=解錠済み
|
||||||
main.vaultDetail.accessLocation=アクセス可能な金庫のコンテンツ:
|
main.vaultDetail.accessLocation=アクセス可能な金庫のコンテンツ:
|
||||||
main.vaultDetail.revealBtn=ドライブを表示
|
main.vaultDetail.revealBtn=ドライブを表示
|
||||||
main.vaultDetail.lockBtn=施錠
|
main.vaultDetail.lockBtn=施錠
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=書き込み:
|
|||||||
main.vaultDetail.throughput.idle=アイドル
|
main.vaultDetail.throughput.idle=アイドル
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=金庫をアップグレード
|
||||||
|
main.vaultDetail.migratePrompt=金庫にアクセスする前に、 金庫を新しい形式にアップグレードする必要があります
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=不明なファイル
|
wrongFileAlert.title=不明なファイル
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=Ok
|
|||||||
wrongFileAlert.information=Cryptomator の金庫ではない、ファイルかフォルダーを追加しようとしました。データを暗号化するには、金庫を作成して施錠してください。
|
wrongFileAlert.information=Cryptomator の金庫ではない、ファイルかフォルダーを追加しようとしました。データを暗号化するには、金庫を作成して施錠してください。
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=基本設定
|
vaultOptions.general=基本設定
|
||||||
vaultOptions.general.changePasswordBtn=パスワードの変更
|
vaultOptions.general.changePasswordBtn=パスワードの変更
|
||||||
vaultOptions.general.showRecoveryKeyBtn=回復キーを表示
|
vaultOptions.general.showRecoveryKeyBtn=回復キーを表示
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=マウント
|
vaultOptions.mount=マウント
|
||||||
vaultOptions.mount.readonly=読み取り専用
|
vaultOptions.mount.readonly=読み取り専用
|
||||||
vaultOptions.mount.driveName=ドライブ名
|
vaultOptions.mount.driveName=ドライブ名
|
||||||
vaultOptions.mount.customMountFlags=カスタム マウント フラグ
|
vaultOptions.mount.customMountFlags=カスタム マウント フラグ
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=使用中
|
||||||
|
vaultOptions.mount.winDirChooser=空のディレクトリを選択してください
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=回復キー
|
recoveryKey.title=回復キー
|
||||||
|
|||||||
@@ -36,12 +36,13 @@ addvaultwizard.new.directoryPickerTitle=디렉터리 선택
|
|||||||
addvaultwizard.new.enterPassword=Vault의 비밀번호를 입력하십시요.
|
addvaultwizard.new.enterPassword=Vault의 비밀번호를 입력하십시요.
|
||||||
addvaultwizard.new.fileAlreadyExists=이미 다른 객체가 존재하고 있어 해당 경로에 Vault를 생성할 수 없습니다.
|
addvaultwizard.new.fileAlreadyExists=이미 다른 객체가 존재하고 있어 해당 경로에 Vault를 생성할 수 없습니다.
|
||||||
addvaultwizard.new.invalidName=유효하지 않은 Vault 이름입니다. 일반적인 디렉터리 이름으로 지정해주십시요.
|
addvaultwizard.new.invalidName=유효하지 않은 Vault 이름입니다. 일반적인 디렉터리 이름으로 지정해주십시요.
|
||||||
addvaultwizard.new.ioException=선택된 디렉터리가 기본테스트에 실패하였습니다. Cryptomator가 적절한 권한을 가지고 있는지, 간섭을 받는 것은 없는지 확인하여 주십시요.
|
addvaultwizard.new.ioException=선택된 디렉터리가 기본테스트에 실패하였습니다. Cryptomator가 적절한 권한을 가지고 있고 간섭을 받는 것은 없는지 확인하여 주십시요.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=비밀번호 확인
|
addvaultwizard.new.reenterPassword=비밀번호 확인
|
||||||
addvaultwizard.new.passwordsMatch=비밀번호 일치!
|
addvaultwizard.new.passwordsMatch=비밀번호 일치!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=비밀번호가 일치하지 않습니다.
|
addvaultwizard.new.passwordsDoNotMatch=비밀번호가 일치하지 않습니다.
|
||||||
addvaultwizard.new.createVaultBtn=Vault 생성
|
addvaultwizard.new.createVaultBtn=Vault 생성
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=이것은 복구키입니다. 만일 비밀번호를 분실하셨을 때,데이터를 복구 할 수 있는 유일한 방법이므로, 안전하게 보관하시기 바랍니다.
|
addvaultwizard.new.recoveryKeyInstruction=이것은 복구키입니다. 만일 비밀번호를 분실하셨을 때,데이터를 복구 할 수 있는 유일한 방법이므로, 안전하게 보관하시기 바랍니다.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=예, 이 복구키를 안전하게 백업해두었습니다.
|
addvaultwizard.new.recoveryKeySavedCheckbox=예, 이 복구키를 안전하게 백업해두었습니다.
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Vault를 추가하기 위해 이
|
|||||||
main.vaultlist.contextMenu.remove=Vault 제거
|
main.vaultlist.contextMenu.remove=Vault 제거
|
||||||
main.vaultlist.addVaultBtn=Vault 추가
|
main.vaultlist.addVaultBtn=Vault 추가
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=잠김
|
main.vaultDetail.lockedStatus=잠김
|
||||||
main.vaultDetail.unlockedStatus=잠금해제됨
|
|
||||||
main.vaultDetail.unlockBtn=잠금해제
|
main.vaultDetail.unlockBtn=잠금해제
|
||||||
main.vaultDetail.optionsBtn=Vault 옵션
|
main.vaultDetail.optionsBtn=Vault 옵션
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=잠금해제됨
|
||||||
main.vaultDetail.accessLocation=이 Vault의 내용은 다음의 경로에서 접근할 수 있습니다:
|
main.vaultDetail.accessLocation=이 Vault의 내용은 다음의 경로에서 접근할 수 있습니다:
|
||||||
main.vaultDetail.revealBtn=드라이브 표시
|
main.vaultDetail.revealBtn=드라이브 표시
|
||||||
main.vaultDetail.lockBtn=잠금
|
main.vaultDetail.lockBtn=잠금
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=쓰기:
|
|||||||
main.vaultDetail.throughput.idle=대기
|
main.vaultDetail.throughput.idle=대기
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Vault 업그레이드
|
||||||
|
main.vaultDetail.migratePrompt=Vault에 접근하기 전, 새로운 포멧으로 업그레이드가 필요합니다.
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=알 수 없는 파일
|
wrongFileAlert.title=알 수 없는 파일
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=확인
|
|||||||
wrongFileAlert.information=Cryptomator vault에 없는 파일이나 폴더를 추가하려고 하신 것 같습니다. 데이터를 암호화하기 위해 Vault를 생성하시고 잠금해제하시기 바랍니다.
|
wrongFileAlert.information=Cryptomator vault에 없는 파일이나 폴더를 추가하려고 하신 것 같습니다. 데이터를 암호화하기 위해 Vault를 생성하시고 잠금해제하시기 바랍니다.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=일반
|
vaultOptions.general=일반
|
||||||
vaultOptions.general.changePasswordBtn=비밀번호 변경
|
vaultOptions.general.changePasswordBtn=비밀번호 변경
|
||||||
vaultOptions.general.showRecoveryKeyBtn=복구 키 출력
|
vaultOptions.general.showRecoveryKeyBtn=복구 키 출력
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=드라이브 구성
|
vaultOptions.mount=드라이브 구성
|
||||||
vaultOptions.mount.readonly=읽기 전용
|
vaultOptions.mount.readonly=읽기 전용
|
||||||
vaultOptions.mount.driveName=드라이브 이름
|
vaultOptions.mount.driveName=드라이브 이름
|
||||||
vaultOptions.mount.customMountFlags=사용자 정의 매개변수 사용
|
vaultOptions.mount.customMountFlags=사용자 정의 매개변수 사용
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=사용됨
|
||||||
|
vaultOptions.mount.winDirChooser=빈 디렉터리를 선택해 주십시요
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=복구 키
|
recoveryKey.title=복구 키
|
||||||
|
|||||||
@@ -36,12 +36,13 @@ addvaultwizard.new.directoryPickerTitle=Selecteer map
|
|||||||
addvaultwizard.new.enterPassword=Voer een wachtwoord voor de kluis in
|
addvaultwizard.new.enterPassword=Voer een wachtwoord voor de kluis in
|
||||||
addvaultwizard.new.fileAlreadyExists=Er kan op deze locatie geen kluis aangemaakt worden, omdat er een bepaald object bestaat.
|
addvaultwizard.new.fileAlreadyExists=Er kan op deze locatie geen kluis aangemaakt worden, omdat er een bepaald object bestaat.
|
||||||
addvaultwizard.new.invalidName=Ongeldige kluisnaam. Overweeg een standaard mapnaam.
|
addvaultwizard.new.invalidName=Ongeldige kluisnaam. Overweeg een standaard mapnaam.
|
||||||
addvaultwizard.new.ioException=De geselecteerde map heeft een basistest niet gehaald. Zorg dat de map de juiste rechten heeft, en dat er niets conflicteert met Cryptomator.
|
addvaultwizard.new.ioException=De geselecteerde map heeft een basistest niet gehaald. Zorg dat de map de juiste rechten heeft, en dat er niet conflicteert met Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Bevestig het wachtwoord
|
addvaultwizard.new.reenterPassword=Bevestig het wachtwoord
|
||||||
addvaultwizard.new.passwordsMatch=Wachtwoorden komen overeen!
|
addvaultwizard.new.passwordsMatch=Wachtwoorden komen overeen!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Wachtwoorden komen niet overeen
|
addvaultwizard.new.passwordsDoNotMatch=Wachtwoorden komen niet overeen
|
||||||
addvaultwizard.new.createVaultBtn=Kluis aanmaken
|
addvaultwizard.new.createVaultBtn=Kluis aanmaken
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Dit is uw herstelsleutel. Bewaar deze goed, het is de enige mogelijkheid om uw data te herstellen als u uw wachtwoord verliest.
|
addvaultwizard.new.recoveryKeyInstruction=Dit is uw herstelsleutel. Bewaar deze goed, het is de enige mogelijkheid om uw data te herstellen als u uw wachtwoord verliest.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, ik heb een beveiligde back-up gemaakt van deze herstelsleutel
|
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, ik heb een beveiligde back-up gemaakt van deze herstelsleutel
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Klik hier om een kluis toe te voe
|
|||||||
main.vaultlist.contextMenu.remove=Verwijder Kluis
|
main.vaultlist.contextMenu.remove=Verwijder Kluis
|
||||||
main.vaultlist.addVaultBtn=Kluis toevoegen
|
main.vaultlist.addVaultBtn=Kluis toevoegen
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=VERGRENDELD
|
main.vaultDetail.lockedStatus=VERGRENDELD
|
||||||
main.vaultDetail.unlockedStatus=ONTGRENDELD
|
|
||||||
main.vaultDetail.unlockBtn=Ontgrendel
|
main.vaultDetail.unlockBtn=Ontgrendel
|
||||||
main.vaultDetail.optionsBtn=Kluis-instellingen
|
main.vaultDetail.optionsBtn=Kluis-instellingen
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=ONTGRENDELD
|
||||||
main.vaultDetail.accessLocation=De inhoud van uw kluis is hier toegankelijk:
|
main.vaultDetail.accessLocation=De inhoud van uw kluis is hier toegankelijk:
|
||||||
main.vaultDetail.revealBtn=Toon Schijf
|
main.vaultDetail.revealBtn=Toon Schijf
|
||||||
main.vaultDetail.lockBtn=Vergrendel
|
main.vaultDetail.lockBtn=Vergrendel
|
||||||
@@ -142,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=schrijven:
|
|||||||
main.vaultDetail.throughput.idle=inactief
|
main.vaultDetail.throughput.idle=inactief
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Kluis upgraden
|
||||||
|
main.vaultDetail.migratePrompt=Uw kluis moet worden bijgewerkt naar een nieuw formaat, voordat u deze kunt openen
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Onbekend bestand
|
wrongFileAlert.title=Onbekend bestand
|
||||||
@@ -149,13 +155,17 @@ wrongFileAlert.btn=Oké
|
|||||||
wrongFileAlert.information=U hebt geprobeerd om een bestand of een map toe te voegen die geen Cryptomator kluis is. Maak en ontgrendel een kluis om uw gegevens te versleutelen.
|
wrongFileAlert.information=U hebt geprobeerd om een bestand of een map toe te voegen die geen Cryptomator kluis is. Maak en ontgrendel een kluis om uw gegevens te versleutelen.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Algemeen
|
vaultOptions.general=Algemeen
|
||||||
vaultOptions.general.changePasswordBtn=Wijzig wachtwoord
|
vaultOptions.general.changePasswordBtn=Wijzig wachtwoord
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Toon herstelsleutel
|
vaultOptions.general.showRecoveryKeyBtn=Toon herstelsleutel
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Aankoppelen
|
vaultOptions.mount=Aankoppelen
|
||||||
vaultOptions.mount.readonly=Alleen-Lezen
|
vaultOptions.mount.readonly=Alleen-Lezen
|
||||||
vaultOptions.mount.driveName=Schijfnaam
|
vaultOptions.mount.driveName=Schijfnaam
|
||||||
vaultOptions.mount.customMountFlags=Aangepaste Aankoppel Parameters
|
vaultOptions.mount.customMountFlags=Aangepaste Aankoppel Parameters
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=in gebruik
|
||||||
|
vaultOptions.mount.winDirChooser=Kies een lege map
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Herstelsleutel
|
recoveryKey.title=Herstelsleutel
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
### Name
|
### Name
|
||||||
### Location
|
### Location
|
||||||
### Password
|
### Password
|
||||||
|
### Recovery Key
|
||||||
### Information
|
### Information
|
||||||
## Existing
|
## Existing
|
||||||
## Success
|
## Success
|
||||||
@@ -37,10 +38,15 @@
|
|||||||
# Main Window
|
# Main Window
|
||||||
## Vault List
|
## Vault List
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
|
### Unlocked
|
||||||
|
### Needs Migration
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
|
## Mount
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
|
|
||||||
|
|||||||
@@ -36,12 +36,12 @@ addvaultwizard.new.directoryPickerTitle=Selecionar Diretório
|
|||||||
addvaultwizard.new.enterPassword=Digite uma senha para o cofre
|
addvaultwizard.new.enterPassword=Digite uma senha para o cofre
|
||||||
addvaultwizard.new.fileAlreadyExists=O cofre não pode ser criado neste local porque algum objeto já existe.
|
addvaultwizard.new.fileAlreadyExists=O cofre não pode ser criado neste local porque algum objeto já existe.
|
||||||
addvaultwizard.new.invalidName=Nome de cofre inválido. Por favor considere usar um nome de diretório comum.
|
addvaultwizard.new.invalidName=Nome de cofre inválido. Por favor considere usar um nome de diretório comum.
|
||||||
addvaultwizard.new.ioException=O diretório selecionado falhou em um teste básico. Certifique-se de ter os direitos de acesso apropriados e que nada interfira com o Cryptomator.
|
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Confirme a senha
|
addvaultwizard.new.reenterPassword=Confirme a senha
|
||||||
addvaultwizard.new.passwordsMatch=As senhas são idênticas!
|
addvaultwizard.new.passwordsMatch=As senhas são idênticas!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=As senhas são diferentes
|
addvaultwizard.new.passwordsDoNotMatch=As senhas são diferentes
|
||||||
addvaultwizard.new.createVaultBtn=Criar Cofre
|
addvaultwizard.new.createVaultBtn=Criar Cofre
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Esta é a sua chave de recuperação. Mantenha-a segura, é sua única chance de recuperar seus dados se você perder sua senha.
|
addvaultwizard.new.recoveryKeyInstruction=Esta é a sua chave de recuperação. Mantenha-a segura, é sua única chance de recuperar seus dados se você perder sua senha.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Sim, fiz um backup seguro desta chave de recuperação
|
addvaultwizard.new.recoveryKeySavedCheckbox=Sim, fiz um backup seguro desta chave de recuperação
|
||||||
### Information
|
### Information
|
||||||
@@ -130,10 +130,12 @@ main.vaultlist.emptyList.onboardingInstruction=Clique aqui para adicionar um cof
|
|||||||
main.vaultlist.contextMenu.remove=Remover Cofre
|
main.vaultlist.contextMenu.remove=Remover Cofre
|
||||||
main.vaultlist.addVaultBtn=Adicionar Cofre
|
main.vaultlist.addVaultBtn=Adicionar Cofre
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=BLOQUEADO
|
main.vaultDetail.lockedStatus=BLOQUEADO
|
||||||
main.vaultDetail.unlockedStatus=DESBLOQUEADO
|
|
||||||
main.vaultDetail.unlockBtn=Desbloquear
|
main.vaultDetail.unlockBtn=Desbloquear
|
||||||
main.vaultDetail.optionsBtn=Opções de Cofre
|
main.vaultDetail.optionsBtn=Opções de Cofre
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=DESBLOQUEADO
|
||||||
main.vaultDetail.accessLocation=O conteúdo do seu cofre está disponível aqui:
|
main.vaultDetail.accessLocation=O conteúdo do seu cofre está disponível aqui:
|
||||||
main.vaultDetail.revealBtn=Revelar Volume
|
main.vaultDetail.revealBtn=Revelar Volume
|
||||||
main.vaultDetail.lockBtn=Bloquear
|
main.vaultDetail.lockBtn=Bloquear
|
||||||
@@ -142,6 +144,8 @@ main.vaultDetail.bytesPerSecondWritten=gravação:
|
|||||||
main.vaultDetail.throughput.idle=ocioso
|
main.vaultDetail.throughput.idle=ocioso
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Atualizar Cofre
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Arquivo Desconhecido
|
wrongFileAlert.title=Arquivo Desconhecido
|
||||||
@@ -149,9 +153,11 @@ wrongFileAlert.btn=Ok
|
|||||||
wrongFileAlert.information=Você tentou adicionar um arquivo ou diretório que não aparenta ser um cofre do Cryptomator. Para criptografar seus dados, crie e desbloqueie um cofre.
|
wrongFileAlert.information=Você tentou adicionar um arquivo ou diretório que não aparenta ser um cofre do Cryptomator. Para criptografar seus dados, crie e desbloqueie um cofre.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Geral
|
vaultOptions.general=Geral
|
||||||
vaultOptions.general.changePasswordBtn=Alterar Senha
|
vaultOptions.general.changePasswordBtn=Alterar Senha
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Exibir chave de recuperação
|
vaultOptions.general.showRecoveryKeyBtn=Exibir chave de recuperação
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Montagem
|
vaultOptions.mount=Montagem
|
||||||
vaultOptions.mount.readonly=Somente Leitura
|
vaultOptions.mount.readonly=Somente Leitura
|
||||||
vaultOptions.mount.driveName=Nome do Volume
|
vaultOptions.mount.driveName=Nome do Volume
|
||||||
@@ -171,4 +177,3 @@ passwordStrength.messageLabel.4=Muito forte
|
|||||||
|
|
||||||
# Quit
|
# Quit
|
||||||
quit.prompt=Sair da aplicação? Existem cofres desbloqueados.
|
quit.prompt=Sair da aplicação? Existem cofres desbloqueados.
|
||||||
quit.lockAndQuit=Bloquear e Sair
|
|
||||||
|
|||||||
@@ -4,10 +4,10 @@
|
|||||||
## Button
|
## Button
|
||||||
generic.button.apply=Применить
|
generic.button.apply=Применить
|
||||||
generic.button.back=Назад
|
generic.button.back=Назад
|
||||||
generic.button.cancel=Отменить
|
generic.button.cancel=Отмена
|
||||||
generic.button.change=Изменить
|
generic.button.change=Изменить
|
||||||
generic.button.done=Готово
|
generic.button.done=Готово
|
||||||
generic.button.next=Вперед
|
generic.button.next=Далее
|
||||||
|
|
||||||
# Tray Menu
|
# Tray Menu
|
||||||
traymenu.showMainWindow=Показать
|
traymenu.showMainWindow=Показать
|
||||||
@@ -21,7 +21,7 @@ traymenu.vault.reveal=Показать
|
|||||||
addvaultwizard.title=Добавить хранилище
|
addvaultwizard.title=Добавить хранилище
|
||||||
## Welcome
|
## Welcome
|
||||||
addvaultwizard.welcome.newButton=Создать хранилище
|
addvaultwizard.welcome.newButton=Создать хранилище
|
||||||
addvaultwizard.welcome.existingButton=Открыть существующее хранилище
|
addvaultwizard.welcome.existingButton=Открыть имеющееся хранилище
|
||||||
## New
|
## New
|
||||||
### Name
|
### Name
|
||||||
addvaultwizard.new.nameInstruction=Выберите имя для хранилища
|
addvaultwizard.new.nameInstruction=Выберите имя для хранилища
|
||||||
@@ -30,42 +30,43 @@ addvaultwizard.new.namePrompt=Имя хранилища
|
|||||||
addvaultwizard.new.locationInstruction=Где Cryptomator должен хранить зашифрованные файлы вашего хранилища?
|
addvaultwizard.new.locationInstruction=Где Cryptomator должен хранить зашифрованные файлы вашего хранилища?
|
||||||
addvaultwizard.new.locationLabel=Место хранения
|
addvaultwizard.new.locationLabel=Место хранения
|
||||||
addvaultwizard.new.locationPrompt=…
|
addvaultwizard.new.locationPrompt=…
|
||||||
addvaultwizard.new.directoryPickerLabel=Пользовательское расположение
|
addvaultwizard.new.directoryPickerLabel=Своё место
|
||||||
addvaultwizard.new.directoryPickerButton=Выбрать…
|
addvaultwizard.new.directoryPickerButton=Выбрать…
|
||||||
addvaultwizard.new.directoryPickerTitle=Выберите каталог
|
addvaultwizard.new.directoryPickerTitle=Выберите каталог
|
||||||
addvaultwizard.new.enterPassword=Введите пароль для хранилища
|
addvaultwizard.new.enterPassword=Введите пароль для хранилища
|
||||||
addvaultwizard.new.fileAlreadyExists=Хранилище не может быть создано по этому пути, потому что некоторые объекты уже существуют.
|
addvaultwizard.new.fileAlreadyExists=Хранилище не может быть создано по этому пути, потому что некоторые объекты уже существуют.
|
||||||
addvaultwizard.new.invalidName=Неверное имя хранилища. Пожалуйста, выберите стандартное название каталога.
|
addvaultwizard.new.invalidName=Неверное имя хранилища. Укажите корректное имя каталога.
|
||||||
addvaultwizard.new.ioException=Выбранный каталог не прошел начальную проверку. Убедитесь, что у вас есть права доступа и ничего не мешает Cryptomator.
|
addvaultwizard.new.ioException=Выбранный каталог не прошел начальную проверку. Убедитесь, что у вас есть права доступа и ничего не мешает Cryptomator.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Подтвердите пароль
|
addvaultwizard.new.reenterPassword=Подтвердите пароль
|
||||||
addvaultwizard.new.passwordsMatch=Пароли совпадают!
|
addvaultwizard.new.passwordsMatch=Пароли совпадают
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Пароли не совпадают
|
addvaultwizard.new.passwordsDoNotMatch=Пароли не совпадают
|
||||||
addvaultwizard.new.createVaultBtn=Создать хранилище
|
addvaultwizard.new.createVaultBtn=Создать хранилище
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Это ваш ключ восстановления. Держите его в безопасности, это единственный шанс восстановить ваши данные, если вы потеряете пароль.
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Да, я сделал резервную копию этого ключа восстановления
|
addvaultwizard.new.recoveryKeyInstruction=Это ключ восстановления. Держите его в надёжном месте - это единственный шанс восстановить данные, если вы потеряете пароль.
|
||||||
|
addvaultwizard.new.recoveryKeySavedCheckbox=Да, у меня есть резервная копия этого ключа восстановления
|
||||||
### Information
|
### Information
|
||||||
addvault.new.readme.storageLocation.fileName=ЧТО ЗА КАТАЛОГ.rtf
|
addvault.new.readme.storageLocation.fileName=ЧТО ЗА КАТАЛОГ.rtf
|
||||||
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ ФАЙЛЫ ХРАНИЛИЩА ⚠️
|
addvault.new.readme.storageLocation.1=\\fs40\\qc ⚠️ ФАЙЛЫ ХРАНИЛИЩ ⚠️
|
||||||
addvault.new.readme.storageLocation.2=Это место хранения вашего хранилища. {\\b НЕ} изменяйте никакие файлы в этом каталоге.
|
addvault.new.readme.storageLocation.2=Это место, где находится ваше хранилище. {\\b НЕ} изменяйте никакие файлы в этом каталоге.
|
||||||
addvault.new.readme.storageLocation.3=Если вы хотите зашифровать файлы с помощью Cryptomator, разблокируйте хранилище и используйте предоставленный диск.
|
addvault.new.readme.storageLocation.3=Если вы хотите зашифровать файлы с помощью Cryptomator, разблокируйте хранилище и используйте предоставленный диск.
|
||||||
addvault.new.readme.storageLocation.4=Если вам нужна помощь, попробуйте %s.
|
addvault.new.readme.storageLocation.4=Нужна помощь? Попробуйте %s.
|
||||||
addvault.new.readme.accessLocation.fileName=ДОБРО ПОЖАЛОВАТЬ В ВАШЕ ХРАНИЛИЩЕ.rtf
|
addvault.new.readme.accessLocation.fileName=ДОБРО ПОЖАЛОВАТЬ В ХРАНИЛИЩЕ.rtf
|
||||||
addvault.new.readme.accessLocation.1=\\fs40\\qc 🔐️ ЗАШИФРОВАННОЕ ХРАНИЛИЩЕ 🔐️
|
addvault.new.readme.accessLocation.1=\\fs40\\qc 🔐️ ЗАШИФРОВАННЫЙ ТОМ 🔐️
|
||||||
addvault.new.readme.accessLocation.2=Это место доступа в хранилище. Любые файлы, добавленные в этот том, будут зашифрованы Cryptomator. Чтобы получить доступ к этому тому позже, просто разблокируйте его из приложения Cryptomator.
|
addvault.new.readme.accessLocation.2=Это место доступа в хранилище. Любые файлы, добавленные в этот том, будут зашифрованы Cryptomator. Чтобы получить доступ к этому тому позже, просто разблокируйте его из приложения Cryptomator.
|
||||||
addvault.new.readme.accessLocation.3=Можете удалить этот файл.
|
addvault.new.readme.accessLocation.3=Этот файл можно удалить.
|
||||||
## Existing
|
## Existing
|
||||||
addvaultwizard.existing.instruction=Выберите файл "masterkey.cryptomator" от существующего хранилища.
|
addvaultwizard.existing.instruction=Выберите файл "masterkey.cryptomator" из имеющегося хранилища.
|
||||||
addvaultwizard.existing.chooseBtn=Выбрать…
|
addvaultwizard.existing.chooseBtn=Выбрать…
|
||||||
addvaultwizard.existing.filePickerTitle=Выберите файл MasterKey
|
addvaultwizard.existing.filePickerTitle=Выберите файл мастер-ключа
|
||||||
addvaultwizard.existing.error=Не удается добавить хранилище "%s": Недопустимое хранилище. Пожалуйста, просмотрите журнал событий для получения дополнительной информации.
|
addvaultwizard.existing.error=Невозможно добавить хранилище "%s": оно некорректное. См. информацию в журнале событий.
|
||||||
## Success
|
## Success
|
||||||
addvaultwizard.success.nextStepsInstructions=Добавлено хранилище "%s".\nДля добавления или доступа к контенту вам необходимо разблокировать хранилище. Кроме того, вы можете разблокировать его в любое время позже.
|
addvaultwizard.success.nextStepsInstructions=Добавлено хранилище "%s".\nДля добавления данных или доступа к содержимому нужно разблокировать хранилище. Его можно разблокировать и позже.
|
||||||
addvaultwizard.success.unlockNow=Разблокировать сейчас
|
addvaultwizard.success.unlockNow=Разблокировать
|
||||||
|
|
||||||
# Remove Vault
|
# Remove Vault
|
||||||
removeVault.title=Удалить хранилище
|
removeVault.title=Удалить хранилище
|
||||||
removeVault.information=Cryptomator просто забудет это хранилище. Вы можете добавить его снова позже. Зашифрованные файлы не будут удалены с жесткого диска.
|
removeVault.information=Cryptomator просто забудет это хранилище. Позже вы можете добавить его снова. Зашифрованные файлы не будут удалены с жёсткого диска.
|
||||||
removeVault.confirmBtn=Удалить хранилище
|
removeVault.confirmBtn=Удалить хранилище
|
||||||
|
|
||||||
# Change Password
|
# Change Password
|
||||||
@@ -73,43 +74,43 @@ changepassword.title=Изменить пароль
|
|||||||
changepassword.enterOldPassword=Введите текущий пароль для "%s"
|
changepassword.enterOldPassword=Введите текущий пароль для "%s"
|
||||||
changepassword.enterNewPassword=Введите новый пароль для хранилища
|
changepassword.enterNewPassword=Введите новый пароль для хранилища
|
||||||
changepassword.reenterNewPassword=Подтвердите новый пароль
|
changepassword.reenterNewPassword=Подтвердите новый пароль
|
||||||
changepassword.passwordsMatch=Пароли совпадают!
|
changepassword.passwordsMatch=Пароли совпадают
|
||||||
changepassword.passwordsDoNotMatch=Пароли не совпадают
|
changepassword.passwordsDoNotMatch=Пароли не совпадают
|
||||||
changepassword.finalConfirmation=Я понимаю, что не смогу восстановить свои данные, если забуду свой пароль
|
changepassword.finalConfirmation=Я понимаю, что не смогу восстановить свои данные, если забуду пароль
|
||||||
|
|
||||||
# Forget Password
|
# Forget Password
|
||||||
forgetPassword.title=Забыл пароль
|
forgetPassword.title=Не помню пароль
|
||||||
forgetPassword.information=Это удалит сохраненный пароль от этого хранилища из вашего хранилища ключей.
|
forgetPassword.information=Сохранённый пароль от этого хранилища будет удалён из вашей связки ключей.
|
||||||
forgetPassword.confirmBtn=Забыл пароль
|
forgetPassword.confirmBtn=Не помню пароль
|
||||||
|
|
||||||
# Unlock
|
# Unlock
|
||||||
unlock.title=Разблокировать хранилище
|
unlock.title=Разблокировать хранилище
|
||||||
unlock.passwordPrompt=Введите пароль для %s
|
unlock.passwordPrompt=Введите пароль для "%s"
|
||||||
unlock.savePassword=Сохранить пароль
|
unlock.savePassword=Сохранить пароль
|
||||||
unlock.unlockBtn=Разблокировать
|
unlock.unlockBtn=Разблокировать
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message="%s" успешно разблокировано! Ваше хранилище теперь доступно.
|
unlock.success.message=Разблокировка "%s" успешно выполнена! Доступ в хранилище открыт.
|
||||||
unlock.success.revealBtn=Показать хранилище
|
unlock.success.revealBtn=Показать хранилище
|
||||||
|
|
||||||
# Migration
|
# Migration
|
||||||
migration.title=Обновить хранилище
|
migration.title=Обновить хранилище
|
||||||
## Start
|
## Start
|
||||||
migration.start.prompt=Ваше хранилище "%s" должно быть обновлено до более нового формата. Перед тем, как продолжить, убедитесь в отсутствии отложенной синхронизации, которая может повлиять на хранилище.
|
migration.start.prompt=Хранилище "%s" нужно обновить до более нового формата. Прежде чем продолжить, убедитесь, что нет отложенной синхронизации, которая может повлиять на хранилище.
|
||||||
migration.start.confirm=Да, мое хранилище полностью синхронизировано
|
migration.start.confirm=Да, моё хранилище полностью синхронизировано
|
||||||
## Run
|
## Run
|
||||||
migration.run.enterPassword=Введите пароль для %s
|
migration.run.enterPassword=Введите пароль для "%s"
|
||||||
migration.run.startMigrationBtn=Перенести хранилище
|
migration.run.startMigrationBtn=Перенести хранилище
|
||||||
## Sucess
|
## Sucess
|
||||||
migration.success.nextStepsInstructions="%s" перенесено успешно.\nТеперь вы можете разблокировать хранилище.
|
migration.success.nextStepsInstructions=Перенос "%s" успешно выполнен.\nТеперь можно разблокировать хранилище.
|
||||||
migration.success.unlockNow=Разблокировать сейчас
|
migration.success.unlockNow=Разблокировать
|
||||||
|
|
||||||
# Preferences
|
# Preferences
|
||||||
preferences.title=Настройки
|
preferences.title=Настройки
|
||||||
## General
|
## General
|
||||||
preferences.general=Общее
|
preferences.general=Общие
|
||||||
preferences.general.theme=Внешний вид
|
preferences.general.theme=Оформление
|
||||||
preferences.general.startHidden=Скрыть окно при запуске Cryptomator
|
preferences.general.startHidden=Скрывать окно при запуске Cryptomator
|
||||||
preferences.general.debugLogging=Включить ведение журнала отладки
|
preferences.general.debugLogging=Вести журнал отладки
|
||||||
## Volume
|
## Volume
|
||||||
preferences.volume=Виртуальный диск
|
preferences.volume=Виртуальный диск
|
||||||
preferences.volume.type=Тип тома
|
preferences.volume.type=Тип тома
|
||||||
@@ -119,47 +120,56 @@ preferences.volume.webdav.scheme=Схема WebDAV
|
|||||||
preferences.updates=Обновления
|
preferences.updates=Обновления
|
||||||
preferences.updates.currentVersion=Текущая версия: %s
|
preferences.updates.currentVersion=Текущая версия: %s
|
||||||
preferences.updates.autoUpdateCheck=Автоматически проверять наличие обновлений
|
preferences.updates.autoUpdateCheck=Автоматически проверять наличие обновлений
|
||||||
preferences.updates.checkNowBtn=Проверить сейчас
|
preferences.updates.checkNowBtn=Проверить
|
||||||
preferences.updates.updateAvailable=Доступно обновление до версии %s.
|
preferences.updates.updateAvailable=Доступно обновление до версии %s.
|
||||||
|
|
||||||
# Main Window
|
# Main Window
|
||||||
main.closeBtn.tooltip=Закрыть
|
main.closeBtn.tooltip=Закрыть
|
||||||
main.preferencesBtn.tooltip=Настройки
|
main.preferencesBtn.tooltip=Настройки
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Нажмите здесь для добавления хранилища
|
main.vaultlist.emptyList.onboardingInstruction=Нажмите здесь, чтобы добавить хранилище
|
||||||
main.vaultlist.contextMenu.remove=Удалить хранилище
|
main.vaultlist.contextMenu.remove=Удалить хранилище
|
||||||
main.vaultlist.addVaultBtn=Добавить хранилище
|
main.vaultlist.addVaultBtn=Добавить хранилище
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=ЗАБЛОКИРОВАНО
|
main.vaultDetail.lockedStatus=ЗАБЛОКИРОВАНО
|
||||||
main.vaultDetail.unlockedStatus=РАЗБЛОКИРОВАНО
|
|
||||||
main.vaultDetail.unlockBtn=Разблокировать
|
main.vaultDetail.unlockBtn=Разблокировать
|
||||||
main.vaultDetail.optionsBtn=Параметры хранилища
|
main.vaultDetail.optionsBtn=Параметры хранилища
|
||||||
main.vaultDetail.accessLocation=Содержимое вашего хранилища доступно здесь:
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=РАЗБЛОКИРОВАНО
|
||||||
|
main.vaultDetail.accessLocation=Содержимое хранилища доступно здесь:
|
||||||
main.vaultDetail.revealBtn=Показать диск
|
main.vaultDetail.revealBtn=Показать диск
|
||||||
main.vaultDetail.lockBtn=Заблокировать
|
main.vaultDetail.lockBtn=Заблокировать
|
||||||
main.vaultDetail.bytesPerSecondRead=прочитано:
|
main.vaultDetail.bytesPerSecondRead=чтение:
|
||||||
main.vaultDetail.bytesPerSecondWritten=записано:
|
main.vaultDetail.bytesPerSecondWritten=запись:
|
||||||
main.vaultDetail.throughput.idle=бездействие
|
main.vaultDetail.throughput.idle=бездействие
|
||||||
main.vaultDetail.throughput.kbps=%.1f Кб/с
|
main.vaultDetail.throughput.kbps=%.1f КиБ/с
|
||||||
main.vaultDetail.throughput.mbps=%.1f Мб/с
|
main.vaultDetail.throughput.mbps=%.1f МиБ/с
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Обновить хранилище
|
||||||
|
main.vaultDetail.migratePrompt=Хранилище должно быть обновлено до нового формата, прежде чем вы сможете получить к нему доступ
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Неизвестный файл
|
wrongFileAlert.title=Неизвестный файл
|
||||||
wrongFileAlert.btn=ОК
|
wrongFileAlert.btn=OK
|
||||||
wrongFileAlert.information=Вы пытались добавить файл или папку, которые, похоже, не являются хранилищем Cryptomator. Чтобы зашифровать ваши данные, создайте и разблокируйте хранилище.
|
wrongFileAlert.information=Вы пытались добавить файл или папку, которые, похоже, не являются хранилищем Cryptomator. Чтобы зашифровать данные, создайте и разблокируйте хранилище.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
vaultOptions.general=Общее
|
## General
|
||||||
|
vaultOptions.general=Общие
|
||||||
vaultOptions.general.changePasswordBtn=Изменить пароль
|
vaultOptions.general.changePasswordBtn=Изменить пароль
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Отобразить ключ восстановления
|
vaultOptions.general.showRecoveryKeyBtn=Показать ключ восстановления
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Монтирование
|
vaultOptions.mount=Монтирование
|
||||||
vaultOptions.mount.readonly=Только чтение
|
vaultOptions.mount.readonly=Только чтение
|
||||||
vaultOptions.mount.driveName=Имя диска
|
vaultOptions.mount.driveName=Имя диска
|
||||||
vaultOptions.mount.customMountFlags=Пользовательские флаги монтирования
|
vaultOptions.mount.customMountFlags=Свои флаги монтирования
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=занято
|
||||||
|
vaultOptions.mount.winDirChooser=Выберите пустой каталог
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Ключ восстановления
|
recoveryKey.title=Ключ восстановления
|
||||||
recoveryKey.enterPassword.prompt=Введите пароль для отображения ключа восстановления для "%s":
|
recoveryKey.enterPassword.prompt=Введите пароль, чтобы показать ключ для "%s":
|
||||||
recoveryKey.display.message=Ключ восстановления для "%s":
|
recoveryKey.display.message=Ключ восстановления для "%s":
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
|
|||||||
@@ -36,12 +36,12 @@ addvaultwizard.new.directoryPickerTitle=Välj katalog
|
|||||||
addvaultwizard.new.enterPassword=Ange ett lösenord för valvet
|
addvaultwizard.new.enterPassword=Ange ett lösenord för valvet
|
||||||
addvaultwizard.new.fileAlreadyExists=Valvet kan inte skapas på denna plats då vissa filer redan finns.
|
addvaultwizard.new.fileAlreadyExists=Valvet kan inte skapas på denna plats då vissa filer redan finns.
|
||||||
addvaultwizard.new.invalidName=Felaktigt namn på valvet. Vänligen ange ett vanligt katalognamn.
|
addvaultwizard.new.invalidName=Felaktigt namn på valvet. Vänligen ange ett vanligt katalognamn.
|
||||||
addvaultwizard.new.ioException=En inledande kontroll av angiven katalog misslyckades. Kontrollera att du har tillräcklig åtkomst till den, och att inget stör Cryptomator.
|
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Bekräfta lösenordet
|
addvaultwizard.new.reenterPassword=Bekräfta lösenordet
|
||||||
addvaultwizard.new.passwordsMatch=Lösenorden stämmer överens!
|
addvaultwizard.new.passwordsMatch=Lösenorden stämmer överens!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Lösenorden stämmer inte överens
|
addvaultwizard.new.passwordsDoNotMatch=Lösenorden stämmer inte överens
|
||||||
addvaultwizard.new.createVaultBtn=Skapa Valv
|
addvaultwizard.new.createVaultBtn=Skapa Valv
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=Detta är din återställningsnyckel. Förvara den väl, den är din enda chans att återställa din data om du tappar bort ditt lösenord.
|
addvaultwizard.new.recoveryKeyInstruction=Detta är din återställningsnyckel. Förvara den väl, den är din enda chans att återställa din data om du tappar bort ditt lösenord.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, jag har säkerhetskopierat återställningsnyckeln
|
addvaultwizard.new.recoveryKeySavedCheckbox=Ja, jag har säkerhetskopierat återställningsnyckeln
|
||||||
### Information
|
### Information
|
||||||
@@ -58,6 +58,7 @@ addvault.new.readme.accessLocation.3=Du kan ta bort denna fil.
|
|||||||
addvaultwizard.existing.instruction=Välj "masterkey.cryptomator" för ditt befintliga valv.
|
addvaultwizard.existing.instruction=Välj "masterkey.cryptomator" för ditt befintliga valv.
|
||||||
addvaultwizard.existing.chooseBtn=Välj…
|
addvaultwizard.existing.chooseBtn=Välj…
|
||||||
addvaultwizard.existing.filePickerTitle=Välj Masterkey-fil
|
addvaultwizard.existing.filePickerTitle=Välj Masterkey-fil
|
||||||
|
addvaultwizard.existing.error=Kunde inte lägga till valv "%s": Inget giltigt valv. Vänligen kolla i loggen för mer information.
|
||||||
## Success
|
## Success
|
||||||
addvaultwizard.success.nextStepsInstructions=Lade till valv "%s".\nDu behöver låsa upp detta valv för att komma åt eller lägga till innehåll. Du kan även låsa upp det vid ett senare tillfälle.
|
addvaultwizard.success.nextStepsInstructions=Lade till valv "%s".\nDu behöver låsa upp detta valv för att komma åt eller lägga till innehåll. Du kan även låsa upp det vid ett senare tillfälle.
|
||||||
addvaultwizard.success.unlockNow=Lås upp nu
|
addvaultwizard.success.unlockNow=Lås upp nu
|
||||||
@@ -129,10 +130,12 @@ main.vaultlist.emptyList.onboardingInstruction=Klicka här för att lägga till
|
|||||||
main.vaultlist.contextMenu.remove=Ta bort valv
|
main.vaultlist.contextMenu.remove=Ta bort valv
|
||||||
main.vaultlist.addVaultBtn=Lägg till valv
|
main.vaultlist.addVaultBtn=Lägg till valv
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=LÅST
|
main.vaultDetail.lockedStatus=LÅST
|
||||||
main.vaultDetail.unlockedStatus=UPPLÅST
|
|
||||||
main.vaultDetail.unlockBtn=Lås upp
|
main.vaultDetail.unlockBtn=Lås upp
|
||||||
main.vaultDetail.optionsBtn=Valv-inställningar
|
main.vaultDetail.optionsBtn=Valv-inställningar
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=UPPLÅST
|
||||||
main.vaultDetail.accessLocation=Ditt valv's innehåll kan nås härifrån:
|
main.vaultDetail.accessLocation=Ditt valv's innehåll kan nås härifrån:
|
||||||
main.vaultDetail.revealBtn=Visa enhet
|
main.vaultDetail.revealBtn=Visa enhet
|
||||||
main.vaultDetail.lockBtn=Lås
|
main.vaultDetail.lockBtn=Lås
|
||||||
@@ -141,6 +144,9 @@ main.vaultDetail.bytesPerSecondWritten=skrivet:
|
|||||||
main.vaultDetail.throughput.idle=inaktiv
|
main.vaultDetail.throughput.idle=inaktiv
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Uppgradera valv
|
||||||
|
main.vaultDetail.migratePrompt=Ditt valv behöver uppgraderas till ett nytt format innan du kan använda det
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Okänd fil
|
wrongFileAlert.title=Okänd fil
|
||||||
@@ -148,13 +154,17 @@ wrongFileAlert.btn=Ok
|
|||||||
wrongFileAlert.information=Du försöker lägga till en fil eller katalog som inte verkar vara ett Cryptomator-valv. För att kryptera din data, skapa och lås upp ett valv.
|
wrongFileAlert.information=Du försöker lägga till en fil eller katalog som inte verkar vara ett Cryptomator-valv. För att kryptera din data, skapa och lås upp ett valv.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Allmänt
|
vaultOptions.general=Allmänt
|
||||||
vaultOptions.general.changePasswordBtn=Ändra lösenord
|
vaultOptions.general.changePasswordBtn=Ändra lösenord
|
||||||
vaultOptions.general.showRecoveryKeyBtn=Visa Återsällningsnyckel
|
vaultOptions.general.showRecoveryKeyBtn=Visa Återsällningsnyckel
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Montering
|
vaultOptions.mount=Montering
|
||||||
vaultOptions.mount.readonly=Skrivskyddad
|
vaultOptions.mount.readonly=Skrivskyddad
|
||||||
vaultOptions.mount.driveName=Enhetsnamn
|
vaultOptions.mount.driveName=Enhetsnamn
|
||||||
vaultOptions.mount.customMountFlags=Egna monterings-flaggor
|
vaultOptions.mount.customMountFlags=Egna monterings-flaggor
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=upptagen
|
||||||
|
vaultOptions.mount.winDirChooser=Välj en tom katalog
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=Återställningsnyckel
|
recoveryKey.title=Återställningsnyckel
|
||||||
|
|||||||
@@ -36,11 +36,13 @@ addvaultwizard.new.directoryPickerTitle=Dizin Seç
|
|||||||
addvaultwizard.new.enterPassword=Kasa için bir şifre girin
|
addvaultwizard.new.enterPassword=Kasa için bir şifre girin
|
||||||
addvaultwizard.new.fileAlreadyExists=Bazı nesneler varolduğu için kasa bu yolda oluşturulamıyor.
|
addvaultwizard.new.fileAlreadyExists=Bazı nesneler varolduğu için kasa bu yolda oluşturulamıyor.
|
||||||
addvaultwizard.new.invalidName=Geçersiz kasa adı. Lütfen normal bir dizin adı kullanın.
|
addvaultwizard.new.invalidName=Geçersiz kasa adı. Lütfen normal bir dizin adı kullanın.
|
||||||
|
addvaultwizard.new.ioException=Seçilen dizin temel bir testte başarısız oldu. Uygun erişim haklarına sahip olduğunuzdan ve hiçbir şeyin Cryptomator'u engellemediğinden emin olun.
|
||||||
### Password
|
### Password
|
||||||
addvaultwizard.new.reenterPassword=Şifreyi onayla
|
addvaultwizard.new.reenterPassword=Şifreyi onayla
|
||||||
addvaultwizard.new.passwordsMatch=Şifreler eşleşti!
|
addvaultwizard.new.passwordsMatch=Şifreler eşleşti!
|
||||||
addvaultwizard.new.passwordsDoNotMatch=Şifreler eşleşmiyor
|
addvaultwizard.new.passwordsDoNotMatch=Şifreler eşleşmiyor
|
||||||
addvaultwizard.new.createVaultBtn=Kasa Oluştur
|
addvaultwizard.new.createVaultBtn=Kasa Oluştur
|
||||||
|
### Recovery Key
|
||||||
addvaultwizard.new.recoveryKeyInstruction=111/5000\nBu senin kurtarma anahtarın. Güvende tutun, şifrenizi kaybederseniz verilerinizi kurtarmak için tek şansınız bu.
|
addvaultwizard.new.recoveryKeyInstruction=111/5000\nBu senin kurtarma anahtarın. Güvende tutun, şifrenizi kaybederseniz verilerinizi kurtarmak için tek şansınız bu.
|
||||||
addvaultwizard.new.recoveryKeySavedCheckbox=Evet, bu kurtarma anahtarının güvenli bir şekilde yedeğini aldım
|
addvaultwizard.new.recoveryKeySavedCheckbox=Evet, bu kurtarma anahtarının güvenli bir şekilde yedeğini aldım
|
||||||
### Information
|
### Information
|
||||||
@@ -57,6 +59,7 @@ addvault.new.readme.accessLocation.3=Bu dosyayı silmeye çekinmeyin.
|
|||||||
addvaultwizard.existing.instruction=Varolan kasanızın "masterkey.cryptomator" dosyasını seçin.
|
addvaultwizard.existing.instruction=Varolan kasanızın "masterkey.cryptomator" dosyasını seçin.
|
||||||
addvaultwizard.existing.chooseBtn=Seç…
|
addvaultwizard.existing.chooseBtn=Seç…
|
||||||
addvaultwizard.existing.filePickerTitle=Masterkey Dosyasını Seç
|
addvaultwizard.existing.filePickerTitle=Masterkey Dosyasını Seç
|
||||||
|
addvaultwizard.existing.error="%s" kasası eklenemiyor: Geçerli bir kasa değil. Daha fazla bilgi için lütfen hata günlüğüne bakınız.
|
||||||
## Success
|
## Success
|
||||||
addvaultwizard.success.nextStepsInstructions="%s" kasası eklendi.\nİçeriğe erişmek veya içerik eklemek için bu kasanın kilidini açmanız gerekir. Alternatif olarak, daha sonra herhangi bir zamanda kilidini açabilirsiniz.
|
addvaultwizard.success.nextStepsInstructions="%s" kasası eklendi.\nİçeriğe erişmek veya içerik eklemek için bu kasanın kilidini açmanız gerekir. Alternatif olarak, daha sonra herhangi bir zamanda kilidini açabilirsiniz.
|
||||||
addvaultwizard.success.unlockNow=Kilidi Şimdi Aç
|
addvaultwizard.success.unlockNow=Kilidi Şimdi Aç
|
||||||
@@ -128,10 +131,12 @@ main.vaultlist.emptyList.onboardingInstruction=Kasa eklemek için buraya tıklay
|
|||||||
main.vaultlist.contextMenu.remove=Kasayı Sil
|
main.vaultlist.contextMenu.remove=Kasayı Sil
|
||||||
main.vaultlist.addVaultBtn=Kasa Ekle
|
main.vaultlist.addVaultBtn=Kasa Ekle
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=KİLİTLİ
|
main.vaultDetail.lockedStatus=KİLİTLİ
|
||||||
main.vaultDetail.unlockedStatus=KİLİDİ AÇIK
|
|
||||||
main.vaultDetail.unlockBtn=Kilidi Aç
|
main.vaultDetail.unlockBtn=Kilidi Aç
|
||||||
main.vaultDetail.optionsBtn=Kasa Ayarları
|
main.vaultDetail.optionsBtn=Kasa Ayarları
|
||||||
|
### Unlocked
|
||||||
|
main.vaultDetail.unlockedStatus=KİLİDİ AÇIK
|
||||||
main.vaultDetail.accessLocation=Kasa içeriğinize buradan erişilebilir:
|
main.vaultDetail.accessLocation=Kasa içeriğinize buradan erişilebilir:
|
||||||
main.vaultDetail.revealBtn=Sürücüyü Göster
|
main.vaultDetail.revealBtn=Sürücüyü Göster
|
||||||
main.vaultDetail.lockBtn=Kilitle
|
main.vaultDetail.lockBtn=Kilitle
|
||||||
@@ -140,6 +145,9 @@ main.vaultDetail.bytesPerSecondWritten=yazma:
|
|||||||
main.vaultDetail.throughput.idle=boşta
|
main.vaultDetail.throughput.idle=boşta
|
||||||
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
main.vaultDetail.throughput.kbps=%.1f kiB/s
|
||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
|
### Needs Migration
|
||||||
|
main.vaultDetail.migrateButton=Kasayı Güncelle
|
||||||
|
main.vaultDetail.migratePrompt=Kasaya erişmeden önce kasanızın yeni bir formata yükseltilmesi gerekiyor
|
||||||
|
|
||||||
# Wrong File Alert
|
# Wrong File Alert
|
||||||
wrongFileAlert.title=Bilinmeyen Dosya
|
wrongFileAlert.title=Bilinmeyen Dosya
|
||||||
@@ -147,14 +155,22 @@ wrongFileAlert.btn=Tamam
|
|||||||
wrongFileAlert.information=Cryptomator kasası gibi görünmeyen bir dosya veya klasör eklemeye çalıştınız. Verilerinizi şifrelemek için bir kasa oluşturun ve kilidini açın.
|
wrongFileAlert.information=Cryptomator kasası gibi görünmeyen bir dosya veya klasör eklemeye çalıştınız. Verilerinizi şifrelemek için bir kasa oluşturun ve kilidini açın.
|
||||||
|
|
||||||
# Vault Options
|
# Vault Options
|
||||||
|
## General
|
||||||
vaultOptions.general=Genel
|
vaultOptions.general=Genel
|
||||||
vaultOptions.general.changePasswordBtn=Şifreyi Değiştir
|
vaultOptions.general.changePasswordBtn=Şifreyi Değiştir
|
||||||
|
vaultOptions.general.showRecoveryKeyBtn=Kurtarma Anahtarını Göster
|
||||||
|
## Mount
|
||||||
vaultOptions.mount=Bağlantı
|
vaultOptions.mount=Bağlantı
|
||||||
vaultOptions.mount.readonly=Salt-Okunur
|
vaultOptions.mount.readonly=Salt-Okunur
|
||||||
vaultOptions.mount.driveName=Sürücü Adı
|
vaultOptions.mount.driveName=Sürücü Adı
|
||||||
vaultOptions.mount.customMountFlags=Özel Bağlantı Parametreleri
|
vaultOptions.mount.customMountFlags=Özel Bağlantı Parametreleri
|
||||||
|
vaultOptions.mount.winDriveLetterOccupied=meşgul
|
||||||
|
vaultOptions.mount.winDirChooser=Boş bir dizin seçin
|
||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
|
recoveryKey.title=Kurtarma Anahtarı
|
||||||
|
recoveryKey.enterPassword.prompt="%s" için kurtarma anahtarını göstermek üzere şifrenizi girin:
|
||||||
|
recoveryKey.display.message="%s" için Kurtarma Anahtarı:
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
passwordStrength.messageLabel.0=Çok zayıf
|
passwordStrength.messageLabel.0=Çok zayıf
|
||||||
|
|||||||
Reference in New Issue
Block a user