Rename resource bundles and name resources after options/parameters

This commit is contained in:
Paul Schaub 2022-08-04 12:15:53 +02:00
parent 7de94f1815
commit dc5f11469f
Signed by: vanitasvitae
GPG key ID: 62BEE9264BF17311
56 changed files with 229 additions and 269 deletions

View file

@ -26,7 +26,7 @@ import java.util.ResourceBundle;
@CommandLine.Command(
name = "sop",
resourceBundle = "sop",
resourceBundle = "msg_sop",
exitCodeOnInvalidInput = 69,
subcommands = {
CommandLine.HelpCommand.class,
@ -48,7 +48,7 @@ import java.util.ResourceBundle;
public class SopCLI {
// Singleton
static SOP SOP_INSTANCE;
static ResourceBundle cliMsg = ResourceBundle.getBundle("sop");
static ResourceBundle cliMsg = ResourceBundle.getBundle("msg_sop");
public static String EXECUTABLE_NAME = "sop";
@ -65,13 +65,13 @@ public class SopCLI {
new CommandLine(new InitLocale()).parseArgs(args);
// get error message bundle
cliMsg = ResourceBundle.getBundle("sop");
cliMsg = ResourceBundle.getBundle("msg_sop");
// Prepare CLI
CommandLine cmd = new CommandLine(SopCLI.class);
// explicitly set help command resource bundle
cmd.getSubcommands().get("help").setResourceBundle(ResourceBundle.getBundle("help"));
cmd.getSubcommands().get("help").setResourceBundle(ResourceBundle.getBundle("msg_help"));
// Hide generate-completion command
cmd.getSubcommands().get("generate-completion").getCommandSpec().usageMessage().hidden(true);

View file

@ -48,7 +48,7 @@ public abstract class AbstractSopCmd implements Runnable {
}
public AbstractSopCmd(@Nonnull Locale locale) {
messages = ResourceBundle.getBundle("sop", locale);
messages = ResourceBundle.getBundle("msg_sop", locale);
}
void throwIfOutputExists(String output) {

View file

@ -14,12 +14,11 @@ import sop.operation.Armor;
import java.io.IOException;
@CommandLine.Command(name = "armor",
resourceBundle = "armor",
resourceBundle = "msg_armor",
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
public class ArmorCmd extends AbstractSopCmd {
@CommandLine.Option(names = {"--label"},
descriptionKey = "usage.option.label",
paramLabel = "{auto|sig|key|cert|message}")
ArmorLabel label;

View file

@ -12,7 +12,7 @@ import sop.operation.Dearmor;
import java.io.IOException;
@CommandLine.Command(name = "dearmor",
resourceBundle = "dearmor",
resourceBundle = "msg_dearmor",
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
public class DearmorCmd extends AbstractSopCmd {

View file

@ -24,7 +24,7 @@ import java.util.List;
import java.util.regex.Pattern;
@CommandLine.Command(name = "decrypt",
resourceBundle = "decrypt",
resourceBundle = "msg_decrypt",
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
public class DecryptCmd extends AbstractSopCmd {
@ -40,49 +40,40 @@ public class DecryptCmd extends AbstractSopCmd {
@CommandLine.Option(
names = {OPT_SESSION_KEY_OUT},
descriptionKey = "usage.option.session_key_out",
paramLabel = "SESSIONKEY")
String sessionKeyOut;
@CommandLine.Option(
names = {OPT_WITH_SESSION_KEY},
descriptionKey = "usage.option.with_session_key",
paramLabel = "SESSIONKEY")
List<String> withSessionKey = new ArrayList<>();
@CommandLine.Option(
names = {OPT_WITH_PASSWORD},
descriptionKey = "usage.option.with_password",
paramLabel = "PASSWORD")
List<String> withPassword = new ArrayList<>();
@CommandLine.Option(names = {OPT_VERIFY_OUT},
descriptionKey = "usage.option.verify_out",
paramLabel = "VERIFICATIONS")
String verifyOut;
@CommandLine.Option(names = {OPT_VERIFY_WITH},
descriptionKey = "usage.option.certs",
paramLabel = "CERT")
List<String> certs = new ArrayList<>();
@CommandLine.Option(names = {OPT_NOT_BEFORE},
descriptionKey = "usage.option.not_before",
paramLabel = "DATE")
String notBefore = "-";
@CommandLine.Option(names = {OPT_NOT_AFTER},
descriptionKey = "usage.option.not_after",
paramLabel = "DATE")
String notAfter = "now";
@CommandLine.Parameters(index = "0..*",
descriptionKey = "usage.param.keys",
paramLabel = "KEY")
List<String> keys = new ArrayList<>();
@CommandLine.Option(names = {OPT_WITH_KEY_PASSWORD},
descriptionKey = "usage.option.with_key_password",
paramLabel = "PASSWORD")
List<String> withKeyPassword = new ArrayList<>();

View file

@ -17,37 +17,31 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "encrypt",
resourceBundle = "encrypt",
resourceBundle = "msg_encrypt",
exitCodeOnInvalidInput = 37)
public class EncryptCmd extends AbstractSopCmd {
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;
@CommandLine.Option(names = {"--as"},
descriptionKey = "usage.option.type",
paramLabel = "{binary|text}")
EncryptAs type;
@CommandLine.Option(names = "--with-password",
descriptionKey = "usage.option.with_password",
paramLabel = "PASSWORD")
List<String> withPassword = new ArrayList<>();
@CommandLine.Option(names = "--sign-with",
descriptionKey = "usage.option.sign_with",
paramLabel = "KEY")
List<String> signWith = new ArrayList<>();
@CommandLine.Option(names = "--with-key-password",
descriptionKey = "usage.option.with_key_password",
paramLabel = "PASSWORD")
List<String> withKeyPassword = new ArrayList<>();
@CommandLine.Parameters(descriptionKey = "usage.param.certs",
index = "0..*",
@CommandLine.Parameters(index = "0..*",
paramLabel = "CERTS")
List<String> certs = new ArrayList<>();

View file

@ -13,12 +13,11 @@ import sop.exception.SOPGPException;
import sop.operation.ExtractCert;
@CommandLine.Command(name = "extract-cert",
resourceBundle = "extract-cert",
resourceBundle = "msg_extract-cert",
exitCodeOnInvalidInput = 37)
public class ExtractCertCmd extends AbstractSopCmd {
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;

View file

@ -15,20 +15,18 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "generate-key",
resourceBundle = "generate-key",
resourceBundle = "msg_generate-key",
exitCodeOnInvalidInput = 37)
public class GenerateKeyCmd extends AbstractSopCmd {
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;
@CommandLine.Parameters(descriptionKey = "usage.option.user_id")
@CommandLine.Parameters
List<String> userId = new ArrayList<>();
@CommandLine.Option(names = "--with-key-password",
descriptionKey = "usage.option.with_key_password",
paramLabel = "PASSWORD")
String withKeyPassword;

View file

@ -14,18 +14,16 @@ import java.io.IOException;
import java.io.OutputStream;
@CommandLine.Command(name = "inline-detach",
resourceBundle = "inline-detach",
resourceBundle = "msg_inline-detach",
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
public class InlineDetachCmd extends AbstractSopCmd {
@CommandLine.Option(
names = {"--signatures-out"},
descriptionKey = "usage.option.signatures_out",
paramLabel = "SIGNATURES")
String signaturesOut;
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;

View file

@ -17,26 +17,22 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "inline-sign",
resourceBundle = "inline-sign",
resourceBundle = "msg_inline-sign",
exitCodeOnInvalidInput = 37)
public class InlineSignCmd extends AbstractSopCmd {
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;
@CommandLine.Option(names = "--as",
descriptionKey = "usage.option.as",
paramLabel = "{binary|text|cleartextsigned}")
InlineSignAs type;
@CommandLine.Parameters(descriptionKey = "usage.parameter.keys",
paramLabel = "KEYS")
@CommandLine.Parameters(paramLabel = "KEYS")
List<String> secretKeyFile = new ArrayList<>();
@CommandLine.Option(names = "--with-key-password",
descriptionKey = "usage.option.with_key_password",
paramLabel = "PASSWORD")
List<String> withKeyPassword = new ArrayList<>();

View file

@ -19,27 +19,23 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "inline-verify",
resourceBundle = "inline-verify",
resourceBundle = "msg_inline-verify",
exitCodeOnInvalidInput = 37)
public class InlineVerifyCmd extends AbstractSopCmd {
@CommandLine.Parameters(arity = "1..*",
descriptionKey = "usage.parameter.certs",
paramLabel = "CERT")
List<String> certificates = new ArrayList<>();
@CommandLine.Option(names = {"--not-before"},
descriptionKey = "usage.option.not_before",
paramLabel = "DATE")
String notBefore = "-";
@CommandLine.Option(names = {"--not-after"},
descriptionKey = "usage.option.not_after",
paramLabel = "DATE")
String notAfter = "now";
@CommandLine.Option(names = "--verifications-out",
descriptionKey = "usage.option.verifications_out")
@CommandLine.Option(names = "--verifications-out")
String verificationsOut;
@Override

View file

@ -20,31 +20,26 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "sign",
resourceBundle = "detached-sign",
resourceBundle = "msg_detached-sign",
exitCodeOnInvalidInput = 37)
public class SignCmd extends AbstractSopCmd {
@CommandLine.Option(names = "--no-armor",
descriptionKey = "usage.option.armor",
negatable = true)
boolean armor = true;
@CommandLine.Option(names = "--as",
descriptionKey = "usage.option.as",
paramLabel = "{binary|text}")
SignAs type;
@CommandLine.Parameters(descriptionKey = "usage.parameter.keys",
paramLabel = "KEYS")
@CommandLine.Parameters(paramLabel = "KEYS")
List<String> secretKeyFile = new ArrayList<>();
@CommandLine.Option(names = "--with-key-password",
descriptionKey = "usage.option.with_key_password",
paramLabel = "PASSWORD")
List<String> withKeyPassword = new ArrayList<>();
@CommandLine.Option(names = "--micalg-out",
descriptionKey = "usage.option.micalg_out",
paramLabel = "MICALG")
String micAlgOut;

View file

@ -17,28 +17,24 @@ import java.util.ArrayList;
import java.util.List;
@CommandLine.Command(name = "verify",
resourceBundle = "detached-verify",
resourceBundle = "msg_detached-verify",
exitCodeOnInvalidInput = 37)
public class VerifyCmd extends AbstractSopCmd {
@CommandLine.Parameters(index = "0",
descriptionKey = "usage.parameter.signature",
paramLabel = "SIGNATURE")
String signature;
@CommandLine.Parameters(index = "0..*",
arity = "1..*",
descriptionKey = "usage.parameter.certs",
paramLabel = "CERT")
List<String> certificates = new ArrayList<>();
@CommandLine.Option(names = {"--not-before"},
descriptionKey = "usage.option.not_before",
paramLabel = "DATE")
String notBefore = "-";
@CommandLine.Option(names = {"--not-after"},
descriptionKey = "usage.option.not_after",
paramLabel = "DATE")
String notAfter = "now";

View file

@ -9,7 +9,7 @@ import sop.cli.picocli.Print;
import sop.cli.picocli.SopCLI;
import sop.operation.Version;
@CommandLine.Command(name = "version", resourceBundle = "version",
@CommandLine.Command(name = "version", resourceBundle = "msg_version",
exitCodeOnInvalidInput = 37)
public class VersionCmd extends AbstractSopCmd {
@ -17,12 +17,10 @@ public class VersionCmd extends AbstractSopCmd {
Exclusive exclusive;
static class Exclusive {
@CommandLine.Option(names = "--extended",
descriptionKey = "usage.option.extended")
@CommandLine.Option(names = "--extended")
boolean extended;
@CommandLine.Option(names = "--backend",
descriptionKey = "usage.option.backend")
@CommandLine.Option(names = "--backend")
boolean backend;
}

View file

@ -1,23 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Decrypt a message from standard input
usage.option.session_key_out=Can be used to learn the session key on successful decryption
usage.option.with_session_key.0=Symmetric message key (session key).
usage.option.with_session_key.1=Enables decryption of the "CIPHERTEXT" using the session key directly against the "SEIPD" packet.
usage.option.with_session_key.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
usage.option.with_password.0=Symmetric passphrase to decrypt the message with.
usage.option.with_password.1=Enables decryption based on any "SKESK" packets in the "CIPHERTEXT".
usage.option.with_password_2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
usage.option.verify_out=Emits signature verification status to the designated output
usage.option.certs=Certificates for signature verification
usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_before.1=Reject signatures with a creation date not in range.
usage.option.not_before.2=Defaults to beginning of time ('-').
usage.option.not_after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_after.1=Reject signatures with a creation date not in range.
usage.option.not_after.2=Defaults to current system time ('now').
usage.option.not_after.3=Accepts special value '-' for end of time.
usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
usage.param.keys=Secret keys to attempt decryption with

View file

@ -1,23 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Entschlüssle eine Nachricht von Standard-Eingabe
usage.option.session_key_out=Extrahiere den Nachrichtenschlüssel nach erfolgreicher Entschlüsselung
usage.option.with_session_key.0=Symmetrischer Nachrichtenschlüssel (Sitzungsschlüssel).
usage.option.with_session_key.1=Ermöglicht direkte Entschlüsselung des im "CIPHERTEXT" enhaltenen "SEIPD" Paketes mithilfe des Nachrichtenschlüssels.
usage.option.with_session_key.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.option.with_password.0=Symmetrisches Passwort zur Entschlüsselung der Nachricht.
usage.option.with_password.1=Ermöglicht Entschlüsselung basierend auf im "CIPHERTEXT" enthaltenen "SKESK" Paketen.
usage.option.with_password.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.option.verify_out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
usage.option.certs=Zertifikate zur Signaturprüfung
usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
usage.option.with_key_password.0=Passwort zum Entsperren der privaten Schlüssel
usage.option.with_key_password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.param.keys=Private Schlüssel zum Entschlüsseln der Nachricht

View file

@ -1,12 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Create a detached signature on the data from standard input
usage.option.armor=ASCII armor the output
usage.option.as.0=Specify the output format of the signed message
usage.option.as.1=Defaults to 'binary'.
usage-option.as.2=If '--as=text' and the input data is not valid UTF-8, sign fails with return code 53.
usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
usage.option.micalg_out=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
usage.parameter.keys=Secret keys used for signing

View file

@ -1,12 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Erstelle abgetrennte Signatur über Nachricht von Standard-Eingabe
usage.option.armor=Schütze Ausgabe mit ASCII Armor
usage.option.as.0=Bestimme Signaturformat der Nachricht.
usage.option.as.1=Standardmäßig: 'binary'.
usage-option.as.2=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
usage.option.with_key_password.0=Passwort zum Entsperren des privaten Schlüssels
usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.option.micalg_out=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
usage.parameter.keys=Private Signaturschlüssel

View file

@ -1,13 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verify a detached signature over the data from standard input
usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_before.1=Reject signatures with a creation date not in range.
usage.option.not_before.2=Defaults to beginning of time ("-").
usage.option.not_after.1=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_after.2=Reject signatures with a creation date not in range.
usage.option.not_after.3=Defaults to current system time ("now").\
usage.option.not_after.4 = Accepts special value "-" for end of time.
usage.parameter.signature=Detached signature
usage.parameter.certs=Public key certificates for signature verification

View file

@ -1,13 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Prüfe eine abgetrennte Signatur über eine Nachricht von Standard-Eingabe
usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
usage.parameter.signature=Abgetrennte Signatur
usage.parameter.certs=Zertifikate (öffentliche Schlüssel) zur Signaturprüfung

View file

@ -1,12 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Encrypt a message from standard input
usage.option.armor=ASCII armor the output
usage.option.type=Type of the input data. Defaults to 'binary'
usage.option.with_password.0=Encrypt the message with a password.
usage.option.with_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
usage.option.sign_with=Sign the output with a private key
usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
usage.param.certs=Certificates the message gets encrypted to

View file

@ -1,12 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verschlüssle eine Nachricht von Standard-Eingabe
usage.option.armor=Schütze Ausgabe mit ASCII Armor
usage.option.type=Format der Nachricht. Standardmäßig 'binary'
usage.option.with_password.0=Verschlüssle die Nachricht mit einem Passwort
usage.option.with_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.option.sign_with=Signiere die Nachricht mit einem privaten Schlüssel
usage.option.with_key_password.0=Passwort zum Entsperren der privaten Schlüssel
usage.option.with_key_password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.param.certs=Zertifikate für die die Nachricht verschlüsselt werden soll

View file

@ -1,8 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Generate a secret key
usage.option.armor=ASCII armor the output
usage.option.user_id=User-ID, e.g. "Alice <alice@example.com>"
usage.option.with_key_password.0=Password to protect the private key with
usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).

View file

@ -1,8 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Generiere einen privaten Schlüssel
usage.option.armor=Schütze Ausgabe mit ASCII Armor
usage.option.user_id=Nutzer-ID, z.B.. "Alice <alice@example.com>"
usage.option.with_key_password.0=Passwort zum Schutz des privaten Schlüssels
usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).

View file

@ -1,14 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Create an inline-signed message from data on standard input
usage.option.armor=ASCII armor the output
usage.option.as.0=Specify the signature format of the signed message
usage.option.as.1='text' and 'binary' will produce inline-signed messages.
usage.option.as.2='cleartextsigned' will make use of the cleartext signature framework.
usage.option.as.3=Defaults to 'binary'.
usage.option.as.4=If '--as=text' and the input data is not valid UTF-8, inline-sign fails with return code 53.
usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
usage.option.micalg=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
usage.parameter.keys=Secret keys used for signing

View file

@ -1,14 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Signiere eine Nachricht von Standard-Eingabe mit eingebetteten Signaturen
usage.option.armor=Schütze Ausgabe mit ASCII Armor
usage.option.as.0=Bestimme Signaturformat der Nachricht.
usage.option.as.1='text' und 'binary' resultieren in eingebettete Signaturen.
usage.option.as.2='cleartextsigned' wird die Nachricht Klartext-signieren.
usage.option.as.3=Standardmäßig: 'binary'.
usage.option.as.4=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
usage.option.with_key_password.0=Passwort zum Entsperren des privaten Schlüssels
usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
usage.option.micalg=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
usage.parameter.keys=Private Signaturschlüssel

View file

@ -1,13 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verify inline-signed data from standard input
usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_before.1=Reject signatures with a creation date not in range.
usage.option.not_before.2=Defaults to beginning of time ("-").
usage.option.not_after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
usage.option.not_after.1=Reject signatures with a creation date not in range.
usage.option.not_after.2=Defaults to current system time ("now").
usage.option.not_after.3=Accepts special value "-" for end of time.
usage.option.verifications_out=File to write details over successful verifications to
usage.parameter.certs=Public key certificates for signature verification

View file

@ -1,13 +0,0 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Prüfe eingebettete Signaturen einer Nachricht von Standard-Eingabe
usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
usage.option.verifications_out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
usage.parameter.certs=Zertifikate (öffentlich Schlüssel) zur Signaturprüfung

View file

@ -2,4 +2,4 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Add ASCII Armor to standard input
usage.option.label=Label to be used in the header and tail of the armoring
label=Label to be used in the header and tail of the armoring

View file

@ -2,4 +2,4 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Schütze Standard-Eingabe mit ASCII Armor
usage.option.label=Label für Kopf- und Fußzeile der ASCII Armor
label=Label für Kopf- und Fußzeile der ASCII Armor

View file

@ -0,0 +1,23 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Decrypt a message from standard input
session-key-out=Can be used to learn the session key on successful decryption
with-session-key.0=Symmetric message key (session key).
with-session-key.1=Enables decryption of the "CIPHERTEXT" using the session key directly against the "SEIPD" packet.
with-session-key.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
with-password.0=Symmetric passphrase to decrypt the message with.
with-password.1=Enables decryption based on any "SKESK" packets in the "CIPHERTEXT".
with-password.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
verify-out=Emits signature verification status to the designated output
certs=Certificates for signature verification
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-before.1=Reject signatures with a creation date not in range.
not-before.2=Defaults to beginning of time ('-').
not-after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-after.1=Reject signatures with a creation date not in range.
not-after.2=Defaults to current system time ('now').
not-after.3=Accepts special value '-' for end of time.
with-key-password.0=Passphrase to unlock the secret key(s).
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
keys=Secret keys to attempt decryption with

View file

@ -0,0 +1,23 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Entschlüssle eine Nachricht von Standard-Eingabe
session-key-out=Extrahiere den Nachrichtenschlüssel nach erfolgreicher Entschlüsselung
with-session-key.0=Symmetrischer Nachrichtenschlüssel (Sitzungsschlüssel).
with-session-key.1=Ermöglicht direkte Entschlüsselung des im "CIPHERTEXT" enhaltenen "SEIPD" Paketes mithilfe des Nachrichtenschlüssels.
with_session-key.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
with-password.0=Symmetrisches Passwort zur Entschlüsselung der Nachricht.
with-password.1=Ermöglicht Entschlüsselung basierend auf im "CIPHERTEXT" enthaltenen "SKESK" Paketen.
with-password.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
verify-out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
certs=Zertifikate zur Signaturprüfung
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
with-key-password.0=Passwort zum Entsperren der privaten Schlüssel
with-key-password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
keys=Private Schlüssel zum Entschlüsseln der Nachricht

View file

@ -0,0 +1,12 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Create a detached signature on the data from standard input
armor=ASCII armor the output
as.0=Specify the output format of the signed message
as.1=Defaults to 'binary'.
as.2=If '--as=text' and the input data is not valid UTF-8, sign fails with return code 53.
with-key-password.0=Passphrase to unlock the secret key(s).
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
micalg-out=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
keys=Secret keys used for signing

View file

@ -0,0 +1,12 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Erstelle abgetrennte Signatur über Nachricht von Standard-Eingabe
armor=Schütze Ausgabe mit ASCII Armor
as.0=Bestimme Signaturformat der Nachricht.
as.1=Standardmäßig: 'binary'.
as.2=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
with-key-password.0=Passwort zum Entsperren des privaten Schlüssels
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
micalg-out=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
keys=Private Signaturschlüssel

View file

@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verify a detached signature over the data from standard input
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-before.1=Reject signatures with a creation date not in range.
not-before.2=Defaults to beginning of time ("-").
not-after.1=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-after.2=Reject signatures with a creation date not in range.
not-after.3=Defaults to current system time ("now").\
not-after.4 = Accepts special value "-" for end of time.
signature=Detached signature
certs=Public key certificates for signature verification

View file

@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Prüfe eine abgetrennte Signatur über eine Nachricht von Standard-Eingabe
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
signature=Abgetrennte Signatur
certs=Zertifikate (öffentliche Schlüssel) zur Signaturprüfung

View file

@ -0,0 +1,12 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Encrypt a message from standard input
armor=ASCII armor the output
type=Type of the input data. Defaults to 'binary'
with-password.0=Encrypt the message with a password.
with-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
sign-with=Sign the output with a private key
with-key-password.0=Passphrase to unlock the secret key(s).
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
certs=Certificates the message gets encrypted to

View file

@ -0,0 +1,12 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verschlüssle eine Nachricht von Standard-Eingabe
armor=Schütze Ausgabe mit ASCII Armor
type=Format der Nachricht. Standardmäßig 'binary'
with-password.0=Verschlüssle die Nachricht mit einem Passwort
with-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
sign-with=Signiere die Nachricht mit einem privaten Schlüssel
with-key-password.0=Passwort zum Entsperren der privaten Schlüssel
with-key-password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
certs=Zertifikate für die die Nachricht verschlüsselt werden soll

View file

@ -2,4 +2,4 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Extract a public key certificate from a secret key from standard input
usage.option.armor=ASCII armor the output
armor=ASCII armor the output

View file

@ -2,4 +2,4 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Extrahiere Zertifikat (öffentlichen Schlüssel) aus privatem Schlüssel von Standard-Eingabe
usage.option.armor=Schütze Ausgabe mit ASCII Armor
armor=Schütze Ausgabe mit ASCII Armor

View file

@ -0,0 +1,8 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Generate a secret key
armor=ASCII armor the output
user-id=User-ID, e.g. "Alice <alice@example.com>"
with-key-password.0=Password to protect the private key with
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).

View file

@ -0,0 +1,8 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Generiere einen privaten Schlüssel
armor=Schütze Ausgabe mit ASCII Armor
user-id=Nutzer-ID, z.B.. "Alice <alice@example.com>"
with-key-password.0=Passwort zum Schutz des privaten Schlüssels
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).

View file

@ -2,5 +2,5 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Split signatures from a clearsigned message
usage.option.armor=ASCII armor the output
usage.option.signatures_out=Destination to which a detached signatures block will be written
armor=ASCII armor the output
signatures-out=Destination to which a detached signatures block will be written

View file

@ -2,5 +2,5 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Trenne Signaturen von Klartext-signierter Nachricht
usage.option.armor=Schütze Ausgabe mit ASCII Armor
usage.option.signatures_out=Schreibe abgetrennte Signaturen in Ausgabe
armor=Schütze Ausgabe mit ASCII Armor
signatures-out=Schreibe abgetrennte Signaturen in Ausgabe

View file

@ -0,0 +1,14 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Create an inline-signed message from data on standard input
armor=ASCII armor the output
as.0=Specify the signature format of the signed message
as.1='text' and 'binary' will produce inline-signed messages.
as.2='cleartextsigned' will make use of the cleartext signature framework.
as.3=Defaults to 'binary'.
as.4=If '--as=text' and the input data is not valid UTF-8, inline-sign fails with return code 53.
with-key-password.0=Passphrase to unlock the secret key(s).
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
micalg=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
keys=Secret keys used for signing

View file

@ -0,0 +1,14 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Signiere eine Nachricht von Standard-Eingabe mit eingebetteten Signaturen
armor=Schütze Ausgabe mit ASCII Armor
as.0=Bestimme Signaturformat der Nachricht.
as.1='text' und 'binary' resultieren in eingebettete Signaturen.
as.2='cleartextsigned' wird die Nachricht Klartext-signieren.
as.3=Standardmäßig: 'binary'.
as.4=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
with-key-password.0=Passwort zum Entsperren des privaten Schlüssels
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
micalg=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
keys=Private Signaturschlüssel

View file

@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Verify inline-signed data from standard input
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-before.1=Reject signatures with a creation date not in range.
not-before.2=Defaults to beginning of time ("-").
not-after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
not-after.1=Reject signatures with a creation date not in range.
not-after.2=Defaults to current system time ("now").
not-after.3=Accepts special value "-" for end of time.
verifications-out=File to write details over successful verifications to
certs=Public key certificates for signature verification

View file

@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Prüfe eingebettete Signaturen einer Nachricht von Standard-Eingabe
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
verifications-out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
certs=Zertifikate (öffentlich Schlüssel) zur Signaturprüfung

View file

@ -5,7 +5,7 @@ sop.name=sop
usage.header=Stateless OpenPGP Protocol
usage.footerHeading=Powered by picocli%n
sop.locale=Locale for description texts
locale=Locale for description texts
# Generic
usage.synopsisHeading=Usage:\u0020
usage.commandListHeading = %nCommands:%n

View file

@ -5,7 +5,7 @@ sop.name=sop
usage.header=Stateless OpenPGP Protocol
usage.footerHeading=Powered by Picocli%n
sop.locale=Gebietsschema für Beschreibungstexte
locale=Gebietsschema für Beschreibungstexte
# Generic
usage.synopsisHeading=Aufruf:\u0020
usage.commandListHeading=%nBefehle:%n

View file

@ -2,5 +2,5 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Display version information about the tool
usage.option.extended=Print an extended version string
usage.option.backend=Print information about the cryptographic backend
extended=Print an extended version string
backend=Print information about the cryptographic backend

View file

@ -2,5 +2,5 @@
#
# SPDX-License-Identifier: Apache-2.0
usage.header=Zeige Versionsinformationen über das Programm
usage.option.extended=Gebe erweiterte Versionsinformationen aus
usage.option.backend=Gebe Informationen über das kryptografische Backend aus
extended=Gebe erweiterte Versionsinformationen aus
backend=Gebe Informationen über das kryptografische Backend aus