Marco Ricci commited on 2025-02-11 23:22:09
Zeige 1 geänderte Dateien mit 739 Einfügungen und 725 Löschungen.
... | ... |
@@ -7,8 +7,8 @@ msgid "" |
7 | 7 |
msgstr "" |
8 | 8 |
"Project-Id-Version: derivepassphrase 0.5a1.dev1\n" |
9 | 9 |
"Report-Msgid-Bugs-To: software@the13thletter.info\n" |
10 |
-"POT-Creation-Date: 2025-02-11 15:30+0000\n" |
|
11 |
-"PO-Revision-Date: 2025-02-11 15:30+0000\n" |
|
10 |
+"POT-Creation-Date: 2025-02-11 22:20+0000\n" |
|
11 |
+"PO-Revision-Date: 2025-02-11 22:20+0000\n" |
|
12 | 12 |
"Last-Translator: AUTHOR <someone@example.com>\n" |
13 | 13 |
"Language: en\n" |
14 | 14 |
"Language-Team: English\n" |
... | ... |
@@ -17,1151 +17,1165 @@ msgstr "" |
17 | 17 |
"Content-Transfer-Encoding: 8bit\n" |
18 | 18 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n" |
19 | 19 |
|
20 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. Here, we report on a single item (path and value) we discovered after decrypting the whole bucket. (We ensure the path and value are printable as-is.) |
|
20 |
+#. TRANSLATORS: This is a short label that will be prepended to a warning message, e.g., "Deprecation warning: A subcommand will be required in v1.0." |
|
21 | 21 |
#. |
22 |
-#. Message-ID: DebugMsgTemplate.BUCKET_ITEM_FOUND |
|
23 |
-#, python-brace-format |
|
24 |
-msgctxt "Debug message" |
|
25 |
-msgid "Found bucket item: {path} -> {value}" |
|
22 |
+#. Message-ID: Label.DEPRECATION_WARNING_LABEL |
|
23 |
+msgctxt "Label :: Diagnostics :: Marker" |
|
24 |
+msgid "Deprecation warning" |
|
26 | 25 |
msgstr "" |
27 | 26 |
|
28 |
-#. TRANSLATORS: "AES256-CBC" and "PKCS#7" are, in essence, names of formats, and should not be translated. "IV" means "initialization vector", and is specifically a cryptographic term, as are "plaintext" and "ciphertext". |
|
27 |
+#. TRANSLATORS: This is a short label that will be prepended to a warning message, e.g., "Warning: An empty service name is not supported by vault(1)." |
|
29 | 28 |
#. |
30 |
-#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_INFO |
|
31 |
-#, python-brace-format |
|
32 |
-msgctxt "Debug message" |
|
33 |
-msgid "Decrypt bucket item contents:\n" |
|
34 |
-"\n" |
|
35 |
-"Encryption key (master key): {enc_key}\n" |
|
36 |
-"Encryption cipher: AES256-CBC with PKCS#7 padding\n" |
|
37 |
-"Encryption IV: {iv}\n" |
|
38 |
-"Encrypted ciphertext: {ciphertext}\n" |
|
39 |
-"Plaintext: {plaintext}" |
|
29 |
+#. Message-ID: Label.WARNING_LABEL |
|
30 |
+msgctxt "Label :: Diagnostics :: Marker" |
|
31 |
+msgid "Warning" |
|
40 | 32 |
msgstr "" |
41 | 33 |
|
42 |
-#. TRANSLATORS: Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_KEY_INFO |
|
43 |
-#, python-brace-format |
|
44 |
-msgctxt "Debug message" |
|
45 |
-msgid "Decrypt bucket item:\n" |
|
46 |
-"\n" |
|
47 |
-"Plaintext: {plaintext}\n" |
|
48 |
-"Encryption key (master key): {enc_key}\n" |
|
49 |
-"Signing key (master key): {sign_key}" |
|
34 |
+#. TRANSLATORS: This is one of two values of the settings_type metavar used in the CANNOT_UPDATE_SETTINGS_NO_SETTINGS entry. It is only used there. The full sentence then reads: "Cannot update the global settings without any given settings." |
|
35 |
+#. |
|
36 |
+#. Message-ID: Label.CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_GLOBAL |
|
37 |
+msgctxt "Label :: Error message :: Metavar" |
|
38 |
+msgid "global settings" |
|
50 | 39 |
msgstr "" |
51 | 40 |
|
52 |
-#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
41 |
+#. TRANSLATORS: This is one of two values of the settings_type metavar used in the CANNOT_UPDATE_SETTINGS_NO_SETTINGS entry. It is only used there. The full sentence then reads: "Cannot update the service-specific settings without any given settings." |
|
53 | 42 |
#. |
54 |
-#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_MAC_INFO |
|
55 |
-#, python-brace-format |
|
56 |
-msgctxt "Debug message" |
|
57 |
-msgid "Decrypt bucket item contents:\n" |
|
58 |
-"\n" |
|
59 |
-"MAC key: {sign_key}\n" |
|
60 |
-"Authenticated content: {ciphertext}\n" |
|
61 |
-"Claimed MAC value: {claimed_mac}\n" |
|
62 |
-"Computed MAC value: {actual_mac}" |
|
43 |
+#. Message-ID: Label.CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_SERVICE |
|
44 |
+msgctxt "Label :: Error message :: Metavar" |
|
45 |
+msgid "service-specific settings" |
|
63 | 46 |
msgstr "" |
64 | 47 |
|
65 |
-#. TRANSLATORS: "AES256-CBC" and "PKCS#7" are, in essence, names of formats, and should not be translated. "IV" means "initialization vector", and is specifically a cryptographic term, as are "plaintext" and "ciphertext". |
|
66 |
-#. |
|
67 |
-#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_SESSION_KEYS_INFO |
|
68 |
-#, python-brace-format |
|
69 |
-msgctxt "Debug message" |
|
70 |
-msgid "Decrypt bucket item session keys:\n" |
|
71 |
-"\n" |
|
72 |
-"Encryption key (master key): {enc_key}\n" |
|
73 |
-"Encryption cipher: AES256-CBC with PKCS#7 padding\n" |
|
74 |
-"Encryption IV: {iv}\n" |
|
75 |
-"Encrypted ciphertext: {ciphertext}\n" |
|
76 |
-"Plaintext: {plaintext}\n" |
|
77 |
-"Parsed plaintext: {code}" |
|
48 |
+#. TRANSLATORS: Message-ID: Label.CONFIGURATION_EPILOG |
|
49 |
+msgctxt "Label :: Help text :: Explanation" |
|
50 |
+msgid "Use $VISUAL or $EDITOR to configure the spawned editor." |
|
78 | 51 |
msgstr "" |
79 | 52 |
|
80 |
-#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
81 |
-#. |
|
82 |
-#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_SESSION_KEYS_MAC_INFO |
|
83 |
-#, python-brace-format |
|
84 |
-msgctxt "Debug message" |
|
85 |
-msgid "Decrypt bucket item session keys:\n" |
|
86 |
-"\n" |
|
87 |
-"MAC key (master key): {sign_key}\n" |
|
88 |
-"Authenticated content: {ciphertext}\n" |
|
89 |
-"Claimed MAC value: {claimed_mac}\n" |
|
90 |
-"Computed MAC value: {actual_mac}" |
|
53 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_02 |
|
54 |
+msgctxt "Label :: Help text :: Explanation" |
|
55 |
+msgid "The currently implemented subcommands are \"vault\" (for the scheme used by vault) and \"export\" (for exporting foreign configuration data). See the respective `--help` output for instructions. If no subcommand is given, we default to \"vault\"." |
|
91 | 56 |
msgstr "" |
92 | 57 |
|
93 |
-#. TRANSLATORS: Message-ID: DebugMsgTemplate.DERIVED_MASTER_KEYS_KEYS |
|
94 |
-#, python-brace-format |
|
95 |
-msgctxt "Debug message" |
|
96 |
-msgid "Derived master keys' keys:\n" |
|
97 |
-"\n" |
|
98 |
-"Encryption key: {enc_key}\n" |
|
99 |
-"Signing key: {sign_key}\n" |
|
100 |
-"Password: {pw_bytes}\n" |
|
101 |
-"Function call: pbkdf2(algorithm={algorithm!r}, length={length!r}, salt={salt!r}, iterations={iterations!r})" |
|
58 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_03 |
|
59 |
+msgctxt "Label :: Help text :: Explanation" |
|
60 |
+msgid "Deprecation notice: Defaulting to \"vault\" is deprecated. Starting in v1.0, the subcommand must be specified explicitly." |
|
102 | 61 |
msgstr "" |
103 | 62 |
|
104 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". Each "directory" in the path contains a list of children it claims to contain, and this list must be matched against the actual discovered items. Now, at the end, we actually confirm the claim. (We would have already thrown an error here otherwise.) |
|
105 |
-#. |
|
106 |
-#. Message-ID: DebugMsgTemplate.DIRECTORY_CONTENTS_CHECK_OK |
|
107 |
-#, python-brace-format |
|
108 |
-msgctxt "Debug message" |
|
109 |
-msgid "Directory contents check OK: {path} -> {contents}" |
|
63 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EPILOG_01 |
|
64 |
+msgctxt "Label :: Help text :: Explanation" |
|
65 |
+msgid "Configuration is stored in a directory according to the `DERIVEPASSPHRASE_PATH` variable, which defaults to `~/.derivepassphrase` on UNIX-like systems and `C:\\Users\\<user>\\AppData\\Roaming\\Derivepassphrase` on Windows." |
|
110 | 66 |
msgstr "" |
111 | 67 |
|
112 |
-#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
113 |
-#. |
|
114 |
-#. Message-ID: DebugMsgTemplate.MASTER_KEYS_DATA_MAC_INFO |
|
115 |
-#, python-brace-format |
|
116 |
-msgctxt "Debug message" |
|
117 |
-msgid "Master keys data:\n" |
|
118 |
-"\n" |
|
119 |
-"MAC key: {sign_key}\n" |
|
120 |
-"Authenticated content: {ciphertext}\n" |
|
121 |
-"Claimed MAC value: {claimed_mac}\n" |
|
122 |
-"Computed MAC value: {actual_mac}" |
|
68 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EXPORT_02 |
|
69 |
+msgctxt "Label :: Help text :: Explanation" |
|
70 |
+msgid "The only available subcommand is \"vault\", which implements the vault-native configuration scheme. If no subcommand is given, we default to \"vault\"." |
|
123 | 71 |
msgstr "" |
124 | 72 |
|
125 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". Each "directory" in the path contains a list of children it claims to contain, and this list must be matched against the actual discovered items. When emitting this message, we merely indicate that we saved the "claimed" list for this directory for later. |
|
73 |
+#. TRANSLATORS: The metavar is Label.EXPORT_VAULT_METAVAR_PATH. |
|
126 | 74 |
#. |
127 |
-#. Message-ID: DebugMsgTemplate.POSTPONING_DIRECTORY_CONTENTS_CHECK |
|
75 |
+#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 |
|
128 | 76 |
#, python-brace-format |
129 |
-msgctxt "Debug message" |
|
130 |
-msgid "Postponing directory contents check: {path} -> {contents}" |
|
77 |
+msgctxt "Label :: Help text :: Explanation" |
|
78 |
+msgid "Depending on the configuration format, {path_metavar} may either be a file or a directory. We support the vault \"v0.2\", \"v0.3\" and \"storeroom\" formats." |
|
131 | 79 |
msgstr "" |
132 | 80 |
|
133 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". We confirm that we set the entry at the given path to the given value. |
|
81 |
+#. TRANSLATORS: The metavar is Label.EXPORT_VAULT_METAVAR_PATH. |
|
134 | 82 |
#. |
135 |
-#. Message-ID: DebugMsgTemplate.SETTING_CONFIG_STRUCTURE_CONTENTS |
|
83 |
+#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_03 |
|
136 | 84 |
#, python-brace-format |
137 |
-msgctxt "Debug message" |
|
138 |
-msgid "Setting contents: {path} -> {value}" |
|
85 |
+msgctxt "Label :: Help text :: Explanation" |
|
86 |
+msgid "If {path_metavar} is explicitly given as `VAULT_PATH`, then use the `VAULT_PATH` environment variable to determine the correct path. (Use `./VAULT_PATH` or similar to indicate a file/directory actually named `VAULT_PATH`.)" |
|
139 | 87 |
msgstr "" |
140 | 88 |
|
141 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". We confirm that we set up a currently empty directory at the given path. |
|
89 |
+#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
142 | 90 |
#. |
143 |
-#. Message-ID: DebugMsgTemplate.SETTING_CONFIG_STRUCTURE_CONTENTS_EMPTY_DIRECTORY |
|
91 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_02 |
|
144 | 92 |
#, python-brace-format |
145 |
-msgctxt "Debug message" |
|
146 |
-msgid "Setting contents (empty directory): {path}" |
|
93 |
+msgctxt "Label :: Help text :: Explanation" |
|
94 |
+msgid "If operating on global settings, or importing/exporting settings, then {service_metavar} must be omitted. Otherwise it is required." |
|
147 | 95 |
msgstr "" |
148 | 96 |
|
149 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there concerning the terms and thoughts on translating them. |
|
150 |
-#. |
|
151 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_CHECKING_MAC_DETAILS |
|
152 |
-#, python-brace-format |
|
153 |
-msgctxt "Debug message" |
|
154 |
-msgid "MAC details:\n" |
|
155 |
-"\n" |
|
156 |
-"MAC input: {mac_input}\n" |
|
157 |
-"Expected MAC: {mac}" |
|
97 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_EPILOG_01 |
|
98 |
+msgctxt "Label :: Help text :: Explanation" |
|
99 |
+msgid "WARNING: There is NO WAY to retrieve the generated passphrases if the master passphrase, the SSH key, or the exact passphrase settings are lost, short of trying out all possible combinations. You are STRONGLY advised to keep independent backups of the settings and the SSH key, if any." |
|
158 | 100 |
msgstr "" |
159 | 101 |
|
160 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms. |
|
161 |
-#. |
|
162 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_INIT |
|
163 |
-#, python-brace-format |
|
164 |
-msgctxt "Debug message" |
|
165 |
-msgid "evp_bytestokey_md5 (initialization):\n" |
|
166 |
-"\n" |
|
167 |
-"Input: {data}\n" |
|
168 |
-"Salt: {salt}\n" |
|
169 |
-"Key size: {key_size}\n" |
|
170 |
-"IV size: {iv_size}\n" |
|
171 |
-"Buffer length: {buffer_length}\n" |
|
172 |
-"Buffer: {buffer}" |
|
102 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_EPILOG_02 |
|
103 |
+msgctxt "Label :: Help text :: Explanation" |
|
104 |
+msgid "The configuration is NOT encrypted, and you are STRONGLY discouraged from using a stored passphrase." |
|
173 | 105 |
msgstr "" |
174 | 106 |
|
175 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms.This function reports on the final results. |
|
107 |
+#. TRANSLATORS: This instruction text is shown above the user's old stored notes for this service, if any, if the recommended "modern" editor interface is used. The next line is the cut marking defined in Label.DERIVEPASSPHRASE_VAULT_NOTES_MARKER. |
|
176 | 108 |
#. |
177 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_RESULT |
|
178 |
-#, python-brace-format |
|
179 |
-msgctxt "Debug message" |
|
180 |
-msgid "evp_bytestokey_md5 (result):\n" |
|
181 |
-"\n" |
|
182 |
-"Encryption key: {enc_key}\n" |
|
183 |
-"IV: {iv}" |
|
109 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_INSTRUCTION_TEXT |
|
110 |
+msgctxt "Label :: Help text :: Explanation" |
|
111 |
+msgid "# Enter notes below the line with the cut mark (ASCII scissors and\n" |
|
112 |
+"# dashes). Lines above the cut mark (such as this one) will be ignored.\n" |
|
113 |
+"#\n" |
|
114 |
+"# If you wish to clear the notes, leave everything beyond the cut mark\n" |
|
115 |
+"# blank. However, if you leave the *entire* file blank, also removing\n" |
|
116 |
+"# the cut mark, then the edit is aborted, and the old notes contents are\n" |
|
117 |
+"# retained.\n" |
|
118 |
+"#" |
|
184 | 119 |
msgstr "" |
185 | 120 |
|
186 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms.This function reports on the updated buffer length and contents after executing one round of hashing. |
|
121 |
+#. TRANSLATORS: This instruction text is shown if the vault(1)-compatible "legacy" editor interface is used and no previous notes exist. The interface does not support commentary in the notes, so we fill this with obvious placeholder text instead. (Please replace this with what *your* language/culture would obviously recognize as placeholder text.) |
|
187 | 122 |
#. |
188 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_ROUND |
|
189 |
-#, python-brace-format |
|
190 |
-msgctxt "Debug message" |
|
191 |
-msgid "evp_bytestokey_md5 (round update):\n" |
|
192 |
-"\n" |
|
193 |
-"Buffer length: {buffer_length}\n" |
|
194 |
-"Buffer: {buffer}" |
|
123 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_LEGACY_INSTRUCTION_TEXT |
|
124 |
+msgctxt "Label :: Help text :: Explanation" |
|
125 |
+msgid "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." |
|
195 | 126 |
msgstr "" |
196 | 127 |
|
197 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "padding" and "plaintext" are cryptographic terms. |
|
128 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
198 | 129 |
#. |
199 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PADDED_PLAINTEXT |
|
130 |
+#. Message-ID: Label.PASSPHRASE_GENERATION_EPILOG |
|
200 | 131 |
#, python-brace-format |
201 |
-msgctxt "Debug message" |
|
202 |
-msgid "Padded plaintext: {contents}" |
|
132 |
+msgctxt "Label :: Help text :: Explanation" |
|
133 |
+msgid "Use {metavar}=0 to exclude a character type from the output." |
|
203 | 134 |
msgstr "" |
204 | 135 |
|
205 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there concerning the terms and thoughts on translating them. |
|
136 |
+#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH. |
|
206 | 137 |
#. |
207 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PARSE_BUFFER |
|
138 |
+#. Message-ID: Label.STORAGE_MANAGEMENT_EPILOG |
|
208 | 139 |
#, python-brace-format |
209 |
-msgctxt "Debug message" |
|
210 |
-msgid "Buffer: {contents}\n" |
|
211 |
-"\n" |
|
212 |
-"IV: {iv}\n" |
|
213 |
-"Payload: {payload}\n" |
|
214 |
-"MAC: {mac}" |
|
140 |
+msgctxt "Label :: Help text :: Explanation" |
|
141 |
+msgid "Using \"-\" as {metavar} for standard input/standard output is supported." |
|
215 | 142 |
msgstr "" |
216 | 143 |
|
217 |
-#. TRANSLATORS: Message-ID: DebugMsgTemplate.VAULT_NATIVE_PBKDF2_CALL |
|
144 |
+#. TRANSLATORS: We use this format string to indicate, at the beginning of a command's help text, that this command is deprecated. |
|
145 |
+#. |
|
146 |
+#. Message-ID: Label.DEPRECATED_COMMAND_LABEL |
|
218 | 147 |
#, python-brace-format |
219 |
-msgctxt "Debug message" |
|
220 |
-msgid "Master key derivation:\n" |
|
221 |
-"\n" |
|
222 |
-"PBKDF2 call: PBKDF2-HMAC(password={password!r}, salt={salt!r}, iterations={iterations!r}, key_size={key_size!r}, algorithm={algorithm!r})\n" |
|
223 |
-"Result (binary): {raw_result}\n" |
|
224 |
-"Result (hex key): {result_key!r}" |
|
148 |
+msgctxt "Label :: Help text :: Marker" |
|
149 |
+msgid "(Deprecated) {text}" |
|
225 | 150 |
msgstr "" |
226 | 151 |
|
227 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "plaintext" is a cryptographic term. |
|
152 |
+#. TRANSLATORS: The marker for separating the text from Label.DERIVEPASSPHRASE_VAULT_NOTES_INSTRUCTION_TEXT from the user's input (below the marker). The first line starting with this label marks the separation point. |
|
228 | 153 |
#. |
229 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PLAINTEXT |
|
230 |
-#, python-brace-format |
|
231 |
-msgctxt "Debug message" |
|
232 |
-msgid "Plaintext: {contents}" |
|
154 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_MARKER |
|
155 |
+msgctxt "Label :: Help text :: Marker" |
|
156 |
+msgid "# - - - - - >8 - - - - - >8 - - - - - >8 - - - - - >8 - - - - -" |
|
233 | 157 |
msgstr "" |
234 | 158 |
|
235 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC and the debug message PARSING_NATIVE_PARSE_BUFFER; see the commentary there concerning the terms and thoughts on translating them. |
|
159 |
+#. TRANSLATORS: This text is used as {metavar} in Label.EXPORT_VAULT_FORMAT_HELP_TEXT, yielding e.g. "Try the following storage format FMT." |
|
236 | 160 |
#. |
237 |
-#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_V02_PAYLOAD_MAC_POSTPROCESSING |
|
238 |
-#, python-brace-format |
|
239 |
-msgctxt "Debug message" |
|
240 |
-msgid "Postprocessing buffer (v0.2):\n" |
|
241 |
-"\n" |
|
242 |
-"Payload: {payload} (decoded from base64)\n" |
|
243 |
-"MAC: {mac} (decoded from hex)" |
|
161 |
+#. Message-ID: Label.EXPORT_VAULT_FORMAT_METAVAR_FMT |
|
162 |
+msgctxt "Label :: Help text :: Metavar :: export vault" |
|
163 |
+msgid "FMT" |
|
244 | 164 |
msgstr "" |
245 | 165 |
|
246 |
-#. TRANSLATORS: "loaded keys" being keys loaded into the agent. |
|
166 |
+#. TRANSLATORS: This text is used as {metavar} in Label.EXPORT_VAULT_KEY_HELP_TEXT, yielding e.g. "Use K as the storage master key." |
|
247 | 167 |
#. |
248 |
-#. Message-ID: ErrMsgTemplate.AGENT_REFUSED_LIST_KEYS |
|
249 |
-msgctxt "Error message" |
|
250 |
-msgid "The SSH agent failed to or refused to supply a list of loaded keys." |
|
168 |
+#. Message-ID: Label.EXPORT_VAULT_KEY_METAVAR_K |
|
169 |
+msgctxt "Label :: Help text :: Metavar :: export vault" |
|
170 |
+msgid "K" |
|
251 | 171 |
msgstr "" |
252 | 172 |
|
253 |
-#. TRANSLATORS: The message to be signed is the vault UUID, but there's no space to explain that here, so ideally the error message does not go into detail. |
|
173 |
+#. TRANSLATORS: Used as "path_metavar" in Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 and others, yielding e.g. "Depending on the configuration format, PATH may either be a file or a directory." |
|
254 | 174 |
#. |
255 |
-#. Message-ID: ErrMsgTemplate.AGENT_REFUSED_SIGNATURE |
|
256 |
-msgctxt "Error message" |
|
257 |
-msgid "The SSH agent failed to or refused to issue a signature with the selected key, necessary for deriving a service passphrase." |
|
175 |
+#. Message-ID: Label.EXPORT_VAULT_METAVAR_PATH |
|
176 |
+msgctxt "Label :: Help text :: Metavar :: export vault" |
|
177 |
+msgid "PATH" |
|
258 | 178 |
msgstr "" |
259 | 179 |
|
260 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
180 |
+#. TRANSLATORS: This metavar is used in Label.PASSPHRASE_GENERATION_EPILOG, Label.DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT and others, yielding e.g. "Ensure a passphrase length of NUMBER characters.". |
|
261 | 181 |
#. |
262 |
-#. Message-ID: ErrMsgTemplate.CANNOT_CONNECT_TO_AGENT |
|
263 |
-#, python-brace-format |
|
264 |
-msgctxt "Error message" |
|
265 |
-msgid "Cannot connect to the SSH agent: {error!s}: {filename!r}." |
|
182 |
+#. Message-ID: Label.PASSPHRASE_GENERATION_METAVAR_NUMBER |
|
183 |
+msgctxt "Label :: Help text :: Metavar :: vault" |
|
184 |
+msgid "NUMBER" |
|
266 | 185 |
msgstr "" |
267 | 186 |
|
268 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
187 |
+#. TRANSLATORS: This metavar is used in Label.STORAGE_MANAGEMENT_EPILOG, Label.DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT and others, yielding e.g. "Ensure a passphrase length of NUMBER characters.". |
|
269 | 188 |
#. |
270 |
-#. Message-ID: ErrMsgTemplate.CANNOT_CONNECT_TO_AGENT |
|
271 |
-#, python-brace-format |
|
272 |
-msgctxt "Error message" |
|
273 |
-msgid "Cannot connect to the SSH agent: {error!s}." |
|
189 |
+#. Message-ID: Label.STORAGE_MANAGEMENT_METAVAR_PATH |
|
190 |
+msgctxt "Label :: Help text :: Metavar :: vault" |
|
191 |
+msgid "PATH" |
|
274 | 192 |
msgstr "" |
275 | 193 |
|
276 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
194 |
+#. TRANSLATORS: This metavar is used as "service_metavar" in multiple help texts, such as Label.DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT, Label.DERIVEPASSPHRASE_VAULT_02, ErrMsgTemplate.SERVICE_REQUIRED, etc. Sample texts are "Deriving a passphrase requires a SERVICE.", "save the given settings for SERVICE, or global" and "If operating on global settings, or importing/exporting settings, then SERVICE must be omitted." |
|
277 | 195 |
#. |
278 |
-#. Message-ID: ErrMsgTemplate.CANNOT_DECODEIMPORT_VAULT_SETTINGS |
|
279 |
-#, python-brace-format |
|
280 |
-msgctxt "Error message" |
|
281 |
-msgid "Cannot import vault settings: cannot decode JSON: {error!s}." |
|
196 |
+#. Message-ID: Label.VAULT_METAVAR_SERVICE |
|
197 |
+msgctxt "Label :: Help text :: Metavar :: vault" |
|
198 |
+msgid "SERVICE" |
|
282 | 199 |
msgstr "" |
283 | 200 |
|
284 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
285 |
-#. |
|
286 |
-#. Message-ID: ErrMsgTemplate.CANNOT_EXPORT_VAULT_SETTINGS |
|
287 |
-#, python-brace-format |
|
288 |
-msgctxt "Error message" |
|
289 |
-msgid "Cannot export vault settings: {error!s}: {filename!r}." |
|
201 |
+#. TRANSLATORS: Message-ID: Label.DEBUG_OPTION_HELP_TEXT |
|
202 |
+msgctxt "Label :: Help text :: One-line description" |
|
203 |
+msgid "Also emit debug information. Implies --verbose." |
|
290 | 204 |
msgstr "" |
291 | 205 |
|
292 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
206 |
+#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
293 | 207 |
#. |
294 |
-#. Message-ID: ErrMsgTemplate.CANNOT_EXPORT_VAULT_SETTINGS |
|
295 |
-#, python-brace-format |
|
296 |
-msgctxt "Error message" |
|
297 |
-msgid "Cannot export vault settings: {error!s}." |
|
208 |
+#. Message-ID: Label.DERIVEPASSPHRASE_01 |
|
209 |
+msgctxt "Label :: Help text :: One-line description" |
|
210 |
+msgid "Derive a strong passphrase, deterministically, from a master secret." |
|
298 | 211 |
msgstr "" |
299 | 212 |
|
300 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
213 |
+#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
301 | 214 |
#. |
302 |
-#. Message-ID: ErrMsgTemplate.CANNOT_IMPORT_VAULT_SETTINGS |
|
303 |
-#, python-brace-format |
|
304 |
-msgctxt "Error message" |
|
305 |
-msgid "Cannot import vault settings: {error!s}: {filename!r}." |
|
215 |
+#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_01 |
|
216 |
+msgctxt "Label :: Help text :: One-line description" |
|
217 |
+msgid "Export a foreign configuration to standard output." |
|
306 | 218 |
msgstr "" |
307 | 219 |
|
308 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
220 |
+#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
309 | 221 |
#. |
310 |
-#. Message-ID: ErrMsgTemplate.CANNOT_IMPORT_VAULT_SETTINGS |
|
311 |
-#, python-brace-format |
|
312 |
-msgctxt "Error message" |
|
313 |
-msgid "Cannot import vault settings: {error!s}." |
|
222 |
+#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_01 |
|
223 |
+msgctxt "Label :: Help text :: One-line description" |
|
224 |
+msgid "Export a vault-native configuration to standard output." |
|
314 | 225 |
msgstr "" |
315 | 226 |
|
316 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
227 |
+#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
317 | 228 |
#. |
318 |
-#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_USER_CONFIG |
|
319 |
-#, python-brace-format |
|
320 |
-msgctxt "Error message" |
|
321 |
-msgid "Cannot load user config: {error!s}: {filename!r}." |
|
229 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_01 |
|
230 |
+msgctxt "Label :: Help text :: One-line description" |
|
231 |
+msgid "Derive a passphrase using the vault derivation scheme." |
|
322 | 232 |
msgstr "" |
323 | 233 |
|
324 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
234 |
+#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
325 | 235 |
#. |
326 |
-#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_USER_CONFIG |
|
236 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT |
|
327 | 237 |
#, python-brace-format |
328 |
-msgctxt "Error message" |
|
329 |
-msgid "Cannot load user config: {error!s}." |
|
238 |
+msgctxt "Label :: Help text :: One-line description" |
|
239 |
+msgid "Save the given settings for {service_metavar}, or global." |
|
330 | 240 |
msgstr "" |
331 | 241 |
|
332 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
242 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
333 | 243 |
#. |
334 |
-#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_VAULT_SETTINGS |
|
244 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_DASH_HELP_TEXT |
|
335 | 245 |
#, python-brace-format |
336 |
-msgctxt "Error message" |
|
337 |
-msgid "Cannot load vault settings: {error!s}: {filename!r}." |
|
246 |
+msgctxt "Label :: Help text :: One-line description" |
|
247 |
+msgid "Ensure at least {metavar} \"-\" or \"_\" characters." |
|
338 | 248 |
msgstr "" |
339 | 249 |
|
340 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
341 |
-#. |
|
342 |
-#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_VAULT_SETTINGS |
|
343 |
-#, python-brace-format |
|
344 |
-msgctxt "Error message" |
|
345 |
-msgid "Cannot load vault settings: {error!s}." |
|
250 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_ALL_HELP_TEXT |
|
251 |
+msgctxt "Label :: Help text :: One-line description" |
|
252 |
+msgid "Delete all settings." |
|
346 | 253 |
msgstr "" |
347 | 254 |
|
348 |
-#. TRANSLATORS: Unlike the "Cannot load {path!r} as a {fmt!s} vault configuration." message, *this* error message is emitted when we have tried loading the path in each of our supported formats, and failed. The user will thus see the above "Cannot load ..." warning message potentially multiple times, and this error message at the very bottom. |
|
349 |
-#. |
|
350 |
-#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG |
|
351 |
-#, python-brace-format |
|
352 |
-msgctxt "Error message" |
|
353 |
-msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory." |
|
255 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_GLOBALS_HELP_TEXT |
|
256 |
+msgctxt "Label :: Help text :: One-line description" |
|
257 |
+msgid "Delete the global settings." |
|
354 | 258 |
msgstr "" |
355 | 259 |
|
356 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
260 |
+#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
357 | 261 |
#. |
358 |
-#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG_OSERROR |
|
262 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_HELP_TEXT |
|
359 | 263 |
#, python-brace-format |
360 |
-msgctxt "Error message" |
|
361 |
-msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory: {error!s}: {filename!r}." |
|
264 |
+msgctxt "Label :: Help text :: One-line description" |
|
265 |
+msgid "Delete the settings for {service_metavar}." |
|
362 | 266 |
msgstr "" |
363 | 267 |
|
364 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
268 |
+#. TRANSLATORS: The corresponding option is displayed as "--modern-editor-interface / --vault-legacy-editor-interface", so you may want to hint that the default (legacy) is the second of those options. Though the vault(1) legacy editor interface clearly has deficiencies and (in my opinion) should only be used for compatibility purposes, the one-line help text should try not to sound too judgmental, if possible. |
|
365 | 269 |
#. |
366 |
-#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG_OSERROR |
|
367 |
-#, python-brace-format |
|
368 |
-msgctxt "Error message" |
|
369 |
-msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory: {error!s}." |
|
270 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EDITOR_INTERFACE_HELP_TEXT |
|
271 |
+msgctxt "Label :: Help text :: One-line description" |
|
272 |
+msgid "Edit notes using the modern editor interface or the vault-like legacy one (default)." |
|
370 | 273 |
msgstr "" |
371 | 274 |
|
372 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
275 |
+#. TRANSLATORS: The corresponding option is displayed as "--export-as=json|sh", so json refers to the JSON format (default) and sh refers to the POSIX sh format. Please ensure that it is clear what the "json" and "sh" refer to in your translation... even if you cannot use texutal correspondence like the English text does. |
|
373 | 276 |
#. |
374 |
-#. Message-ID: ErrMsgTemplate.CANNOT_STORE_VAULT_SETTINGS |
|
375 |
-#, python-brace-format |
|
376 |
-msgctxt "Error message" |
|
377 |
-msgid "Cannot store vault settings: {error!s}: {filename!r}." |
|
277 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EXPORT_AS_HELP_TEXT |
|
278 |
+msgctxt "Label :: Help text :: One-line description" |
|
279 |
+msgid "When exporting, export as JSON (default) or as POSIX sh." |
|
378 | 280 |
msgstr "" |
379 | 281 |
|
380 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
282 |
+#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH. |
|
381 | 283 |
#. |
382 |
-#. Message-ID: ErrMsgTemplate.CANNOT_STORE_VAULT_SETTINGS |
|
284 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EXPORT_HELP_TEXT |
|
383 | 285 |
#, python-brace-format |
384 |
-msgctxt "Error message" |
|
385 |
-msgid "Cannot store vault settings: {error!s}." |
|
286 |
+msgctxt "Label :: Help text :: One-line description" |
|
287 |
+msgid "Export all saved settings to {metavar}." |
|
386 | 288 |
msgstr "" |
387 | 289 |
|
388 |
-#. TRANSLATORS: This error message is used whenever we cannot make any sense of a response from the SSH agent because the response is ill-formed (truncated, improperly encoded, etc.) or otherwise violates the communications protocol. Well-formed responses that adhere to the protocol, even if they indicate that the requested operation failed, are handled with a different error message. |
|
290 |
+#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH. |
|
389 | 291 |
#. |
390 |
-#. Message-ID: ErrMsgTemplate.CANNOT_UNDERSTAND_AGENT |
|
391 |
-msgctxt "Error message" |
|
392 |
-msgid "Cannot understand the SSH agent's response because it violates the communication protocol." |
|
292 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT |
|
293 |
+#, python-brace-format |
|
294 |
+msgctxt "Label :: Help text :: One-line description" |
|
295 |
+msgid "Import saved settings from {metavar}." |
|
393 | 296 |
msgstr "" |
394 | 297 |
|
395 |
-#. TRANSLATORS: The settings_type metavar contains translations for either "global settings" or "service-specific settings"; see the CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_GLOBAL and CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_SERVICE entries. The first sentence will thus read either "Cannot update the global settings without any given settings." or "Cannot update the service-specific settings without any given settings.". You may update this entry, and the two metavar entries, in any way you see fit that achieves the desired translations of the first sentence. |
|
396 |
-#. |
|
397 |
-#. Message-ID: ErrMsgTemplate.CANNOT_UPDATE_SETTINGS_NO_SETTINGS |
|
398 |
-#, python-brace-format |
|
399 |
-msgctxt "Error message" |
|
400 |
-msgid "Cannot update the {settings_type!s} without any given settings. You must specify at least one of --lower, ..., --symbol, --notes, or --phrase or --key." |
|
298 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_KEY_HELP_TEXT |
|
299 |
+msgctxt "Label :: Help text :: One-line description" |
|
300 |
+msgid "Select a suitable SSH key from the SSH agent." |
|
401 | 301 |
msgstr "" |
402 | 302 |
|
403 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
303 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
404 | 304 |
#. |
405 |
-#. Message-ID: ErrMsgTemplate.INVALID_USER_CONFIG |
|
305 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT |
|
406 | 306 |
#, python-brace-format |
407 |
-msgctxt "Error message" |
|
408 |
-msgid "The user configuration file is invalid. {error!s}: {filename!r}." |
|
307 |
+msgctxt "Label :: Help text :: One-line description" |
|
308 |
+msgid "Ensure a passphrase length of {metavar} characters." |
|
409 | 309 |
msgstr "" |
410 | 310 |
|
411 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
311 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
412 | 312 |
#. |
413 |
-#. Message-ID: ErrMsgTemplate.INVALID_USER_CONFIG |
|
313 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_LOWER_HELP_TEXT |
|
414 | 314 |
#, python-brace-format |
415 |
-msgctxt "Error message" |
|
416 |
-msgid "The user configuration file is invalid. {error!s}." |
|
315 |
+msgctxt "Label :: Help text :: One-line description" |
|
316 |
+msgid "Ensure at least {metavar} lowercase characters." |
|
417 | 317 |
msgstr "" |
418 | 318 |
|
419 |
-#. TRANSLATORS: This error message is a reaction to a validator function saying *that* the configuration is not valid, but not *how* it is not valid. The configuration file is principally parsable, however. |
|
319 |
+#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
420 | 320 |
#. |
421 |
-#. Message-ID: ErrMsgTemplate.INVALID_VAULT_CONFIG |
|
321 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_HELP_TEXT |
|
422 | 322 |
#, python-brace-format |
423 |
-msgctxt "Error message" |
|
424 |
-msgid "Invalid vault config: {config!r}." |
|
323 |
+msgctxt "Label :: Help text :: One-line description" |
|
324 |
+msgid "With --config and {service_metavar}, spawn an editor to edit notes." |
|
425 | 325 |
msgstr "" |
426 | 326 |
|
427 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.MISSING_MODULE |
|
327 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
328 |
+#. |
|
329 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NUMBER_HELP_TEXT |
|
428 | 330 |
#, python-brace-format |
429 |
-msgctxt "Error message" |
|
430 |
-msgid "Cannot load the required Python module {module!r}." |
|
331 |
+msgctxt "Label :: Help text :: One-line description" |
|
332 |
+msgid "Ensure at least {metavar} digits." |
|
431 | 333 |
msgstr "" |
432 | 334 |
|
433 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_AF_UNIX |
|
434 |
-msgctxt "Error message" |
|
435 |
-msgid "Cannot connect to an SSH agent because this Python version does not support UNIX domain sockets." |
|
335 |
+#. TRANSLATORS: The corresponding option is displayed as "--overwrite-existing / --merge-existing", so you may want to hint that the default (merge) is the second of those options. |
|
336 |
+#. |
|
337 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_OVERWRITE_HELP_TEXT |
|
338 |
+msgctxt "Label :: Help text :: One-line description" |
|
339 |
+msgid "Overwrite or merge (default) the existing configuration." |
|
436 | 340 |
msgstr "" |
437 | 341 |
|
438 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_KEY_OR_PHRASE |
|
439 |
-msgctxt "Error message" |
|
440 |
-msgid "No passphrase or key was given in the configuration. In this case, the --phrase or --key argument is required." |
|
342 |
+#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_PHRASE_HELP_TEXT |
|
343 |
+msgctxt "Label :: Help text :: One-line description" |
|
344 |
+msgid "Prompt for a master passphrase." |
|
441 | 345 |
msgstr "" |
442 | 346 |
|
443 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_SSH_AGENT_FOUND |
|
444 |
-msgctxt "Error message" |
|
445 |
-msgid "Cannot find any running SSH agent because SSH_AUTH_SOCK is not set." |
|
347 |
+#. TRANSLATORS: The corresponding option is displayed as "--print-notes-before / --print-notes-after", so you may want to hint that the default (after) is the second of those options. |
|
348 |
+#. |
|
349 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_PRINT_NOTES_BEFORE_HELP_TEXT |
|
350 |
+msgctxt "Label :: Help text :: One-line description" |
|
351 |
+msgid "Print the service notes (if any) before or after (default) the existing configuration." |
|
446 | 352 |
msgstr "" |
447 | 353 |
|
448 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_SUITABLE_SSH_KEYS |
|
354 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
355 |
+#. |
|
356 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_REPEAT_HELP_TEXT |
|
449 | 357 |
#, python-brace-format |
450 |
-msgctxt "Error message" |
|
451 |
-msgid "The SSH agent contains no keys suitable for {PROG_NAME!s}." |
|
358 |
+msgctxt "Label :: Help text :: One-line description" |
|
359 |
+msgid "Forbid any run of {metavar} identical characters." |
|
452 | 360 |
msgstr "" |
453 | 361 |
|
454 |
-#. TRANSLATORS: The params are long-form command-line option names. Typical example: "--key is mutually exclusive with --phrase." |
|
362 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
455 | 363 |
#. |
456 |
-#. Message-ID: ErrMsgTemplate.PARAMS_MUTUALLY_EXCLUSIVE |
|
364 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_SPACE_HELP_TEXT |
|
457 | 365 |
#, python-brace-format |
458 |
-msgctxt "Error message" |
|
459 |
-msgid "{param1!s} is mutually exclusive with {param2!s}." |
|
366 |
+msgctxt "Label :: Help text :: One-line description" |
|
367 |
+msgid "Ensure at least {metavar} spaces." |
|
460 | 368 |
msgstr "" |
461 | 369 |
|
462 |
-#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
370 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
463 | 371 |
#. |
464 |
-#. Message-ID: ErrMsgTemplate.PARAMS_NEEDS_SERVICE |
|
372 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_SYMBOL_HELP_TEXT |
|
465 | 373 |
#, python-brace-format |
466 |
-msgctxt "Error message" |
|
467 |
-msgid "{param!s} requires a {service_metavar!s}." |
|
374 |
+msgctxt "Label :: Help text :: One-line description" |
|
375 |
+msgid "Ensure at least {metavar} symbol characters." |
|
468 | 376 |
msgstr "" |
469 | 377 |
|
470 |
-#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
378 |
+#. TRANSLATORS: The corresponding option is displayed as "--unset=phrase|key|...|symbol", so the "given setting" is referring to "phrase", "key", "lower", ..., or "symbol", respectively. "with --config" here means that the user must also specify "--config" for this option to have any effect. |
|
471 | 379 |
#. |
472 |
-#. Message-ID: ErrMsgTemplate.PARAMS_NEEDS_SERVICE_OR_CONFIG |
|
473 |
-#, python-brace-format |
|
474 |
-msgctxt "Error message" |
|
475 |
-msgid "{param!s} requires a {service_metavar!s} or --config." |
|
380 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_UNSET_HELP_TEXT |
|
381 |
+msgctxt "Label :: Help text :: One-line description" |
|
382 |
+msgid "With --config, also unsets the given setting. May be specified multiple times." |
|
476 | 383 |
msgstr "" |
477 | 384 |
|
478 |
-#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
385 |
+#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
479 | 386 |
#. |
480 |
-#. Message-ID: ErrMsgTemplate.PARAMS_NO_SERVICE |
|
387 |
+#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_UPPER_HELP_TEXT |
|
481 | 388 |
#, python-brace-format |
482 |
-msgctxt "Error message" |
|
483 |
-msgid "{param!s} does not take a {service_metavar!s} argument." |
|
389 |
+msgctxt "Label :: Help text :: One-line description" |
|
390 |
+msgid "Ensure at least {metavar} uppercase characters." |
|
484 | 391 |
msgstr "" |
485 | 392 |
|
486 |
-#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
393 |
+#. TRANSLATORS: See EXPORT_VAULT_FORMAT_HELP_TEXT. The format names/labels "v0.3", "v0.2" and "storeroom" should not be translated. |
|
487 | 394 |
#. |
488 |
-#. Message-ID: ErrMsgTemplate.SERVICE_REQUIRED |
|
489 |
-#, python-brace-format |
|
490 |
-msgctxt "Error message" |
|
491 |
-msgid "Deriving a passphrase requires a {service_metavar!s}." |
|
395 |
+#. Message-ID: Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT |
|
396 |
+msgctxt "Label :: Help text :: One-line description" |
|
397 |
+msgid "Default: v0.3, v0.2, storeroom." |
|
492 | 398 |
msgstr "" |
493 | 399 |
|
494 |
-#. TRANSLATORS: The rephrasing "Attempted to unset and set the same setting (--unset={setting!s} --{setting!s}=...) at the same time."may or may not be more suitable as a basis for translation instead. |
|
400 |
+#. TRANSLATORS: The defaults_hint is Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT, the metavar is Label.EXPORT_VAULT_FORMAT_METAVAR_FMT. |
|
495 | 401 |
#. |
496 |
-#. Message-ID: ErrMsgTemplate.SET_AND_UNSET_SAME_SETTING |
|
402 |
+#. Message-ID: Label.EXPORT_VAULT_FORMAT_HELP_TEXT |
|
497 | 403 |
#, python-brace-format |
498 |
-msgctxt "Error message" |
|
499 |
-msgid "Attempted to unset and set --{setting!s} at the same time." |
|
404 |
+msgctxt "Label :: Help text :: One-line description" |
|
405 |
+msgid "Try the following storage format {metavar}. If specified multiple times, the formats will be tried in order. {defaults_hint}" |
|
500 | 406 |
msgstr "" |
501 | 407 |
|
502 |
-#. TRANSLATORS: Message-ID: ErrMsgTemplate.SSH_KEY_NOT_LOADED |
|
503 |
-msgctxt "Error message" |
|
504 |
-msgid "The requested SSH key is not loaded into the agent." |
|
408 |
+#. TRANSLATORS: See EXPORT_VAULT_KEY_HELP_TEXT. |
|
409 |
+#. |
|
410 |
+#. Message-ID: Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT |
|
411 |
+msgctxt "Label :: Help text :: One-line description" |
|
412 |
+msgid "Default: check the VAULT_KEY, LOGNAME, USER, or USERNAME environment variables." |
|
505 | 413 |
msgstr "" |
506 | 414 |
|
507 |
-#. TRANSLATORS: The user requested to edit the notes for a service, but aborted the request mid-editing. |
|
415 |
+#. TRANSLATORS: The defaults_hint is Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT, the metavar is Label.EXPORT_VAULT_KEY_METAVAR_K. |
|
508 | 416 |
#. |
509 |
-#. Message-ID: ErrMsgTemplate.USER_ABORTED_EDIT |
|
510 |
-msgctxt "Error message" |
|
511 |
-msgid "Not saving any new notes: the user aborted the request." |
|
417 |
+#. Message-ID: Label.EXPORT_VAULT_KEY_HELP_TEXT |
|
418 |
+#, python-brace-format |
|
419 |
+msgctxt "Label :: Help text :: One-line description" |
|
420 |
+msgid "Use {metavar} as the storage master key. {defaults_hint}" |
|
512 | 421 |
msgstr "" |
513 | 422 |
|
514 |
-#. TRANSLATORS: The user was prompted for a master passphrase, but aborted the request. |
|
515 |
-#. |
|
516 |
-#. Message-ID: ErrMsgTemplate.USER_ABORTED_PASSPHRASE |
|
517 |
-msgctxt "Error message" |
|
518 |
-msgid "No passphrase was given; the user aborted the request." |
|
423 |
+#. TRANSLATORS: Message-ID: Label.HELP_OPTION_HELP_TEXT |
|
424 |
+msgctxt "Label :: Help text :: One-line description" |
|
425 |
+msgid "Show this help text, then exit." |
|
519 | 426 |
msgstr "" |
520 | 427 |
|
521 |
-#. TRANSLATORS: The user was prompted to select a master SSH key, but aborted the request. |
|
522 |
-#. |
|
523 |
-#. Message-ID: ErrMsgTemplate.USER_ABORTED_SSH_KEY_SELECTION |
|
524 |
-msgctxt "Error message" |
|
525 |
-msgid "No SSH key was selected; the user aborted the request." |
|
428 |
+#. TRANSLATORS: Message-ID: Label.QUIET_OPTION_HELP_TEXT |
|
429 |
+msgctxt "Label :: Help text :: One-line description" |
|
430 |
+msgid "Suppress even warnings; emit only errors." |
|
526 | 431 |
msgstr "" |
527 | 432 |
|
528 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. After the respective items in the buckets have been decrypted, we then have a list of item paths plus contents to populate. This must be done in a certain order (we don't yet have an existing directory tree to rely on, but rather must build it on-the-fly), hence the term "assembling". |
|
529 |
-#. |
|
530 |
-#. Message-ID: InfoMsgTemplate.ASSEMBLING_CONFIG_STRUCTURE |
|
531 |
-msgctxt "Info message" |
|
532 |
-msgid "Assembling config structure" |
|
433 |
+#. TRANSLATORS: Message-ID: Label.VERBOSE_OPTION_HELP_TEXT |
|
434 |
+msgctxt "Label :: Help text :: One-line description" |
|
435 |
+msgid "Emit extra/progress information to standard error." |
|
533 | 436 |
msgstr "" |
534 | 437 |
|
535 |
-#. TRANSLATORS: "fmt" is a string such as "v0.2" or "storeroom", indicating the format which we tried to load the vault configuration as. |
|
536 |
-#. |
|
537 |
-#. Message-ID: InfoMsgTemplate.CANNOT_LOAD_AS_VAULT_CONFIG |
|
538 |
-#, python-brace-format |
|
539 |
-msgctxt "Info message" |
|
540 |
-msgid "Cannot load {path!r} as a {fmt!s} vault configuration." |
|
438 |
+#. TRANSLATORS: Message-ID: Label.VERSION_OPTION_HELP_TEXT |
|
439 |
+msgctxt "Label :: Help text :: One-line description" |
|
440 |
+msgid "Show applicable version information, then exit." |
|
541 | 441 |
msgstr "" |
542 | 442 |
|
543 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. Having "assembled" the configuration items according to their claimed paths and contents, we then check if the assembled structure is internally consistent. |
|
544 |
-#. |
|
545 |
-#. Message-ID: InfoMsgTemplate.CHECKING_CONFIG_STRUCTURE_CONSISTENCY |
|
546 |
-msgctxt "Info message" |
|
547 |
-msgid "Checking config structure consistency" |
|
443 |
+#. TRANSLATORS: Message-ID: Label.COMMANDS_LABEL |
|
444 |
+msgctxt "Label :: Help text :: Option group name" |
|
445 |
+msgid "Commands" |
|
548 | 446 |
msgstr "" |
549 | 447 |
|
550 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. We parse the directory bucket by bucket. All buckets are numbered in hexadecimal, and typically there are 32 buckets, so 2-digit hex numbers. |
|
551 |
-#. |
|
552 |
-#. Message-ID: InfoMsgTemplate.DECRYPTING_BUCKET |
|
553 |
-#, python-brace-format |
|
554 |
-msgctxt "Info message" |
|
555 |
-msgid "Decrypting bucket {bucket_number}" |
|
448 |
+#. TRANSLATORS: Message-ID: Label.COMPATIBILITY_OPTION_LABEL |
|
449 |
+msgctxt "Label :: Help text :: Option group name" |
|
450 |
+msgid "Compatibility and extension options" |
|
556 | 451 |
msgstr "" |
557 | 452 |
|
558 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. `.keys` is a filename, from which data about the master keys for this configuration are loaded. |
|
559 |
-#. |
|
560 |
-#. Message-ID: InfoMsgTemplate.PARSING_MASTER_KEYS_DATA |
|
561 |
-msgctxt "Info message" |
|
562 |
-msgid "Parsing master keys data from .keys" |
|
453 |
+#. TRANSLATORS: Message-ID: Label.CONFIGURATION_LABEL |
|
454 |
+msgctxt "Label :: Help text :: Option group name" |
|
455 |
+msgid "Configuration" |
|
563 | 456 |
msgstr "" |
564 | 457 |
|
565 |
-#. TRANSLATORS: This message immediately follows an error message about a missing library that needs to be installed. The Python Package Index (PyPI) supports declaring sets of optional dependencies as "extras", so users installing from PyPI can request reinstallation with a named "extra" being enabled. This would then let the installer take care of the missing libraries automatically, hence this suggestion to PyPI users. |
|
566 |
-#. |
|
567 |
-#. Message-ID: InfoMsgTemplate.PIP_INSTALL_EXTRA |
|
568 |
-#, python-brace-format |
|
569 |
-msgctxt "Info message" |
|
570 |
-msgid "For users installing from PyPI, see the {extra_name!r} extra." |
|
458 |
+#. TRANSLATORS: Message-ID: Label.LOGGING_LABEL |
|
459 |
+msgctxt "Label :: Help text :: Option group name" |
|
460 |
+msgid "Logging" |
|
571 | 461 |
msgstr "" |
572 | 462 |
|
573 |
-#. TRANSLATORS: This info message immediately follows the "Using deprecated v0.1-style ..." deprecation warning. |
|
574 |
-#. |
|
575 |
-#. Message-ID: InfoMsgTemplate.SUCCESSFULLY_MIGRATED |
|
463 |
+#. TRANSLATORS: Message-ID: Label.OPTIONS_LABEL |
|
464 |
+msgctxt "Label :: Help text :: Option group name" |
|
465 |
+msgid "Options" |
|
466 |
+msgstr "" |
|
467 |
+ |
|
468 |
+#. TRANSLATORS: Message-ID: Label.OTHER_OPTIONS_LABEL |
|
469 |
+msgctxt "Label :: Help text :: Option group name" |
|
470 |
+msgid "Other options" |
|
471 |
+msgstr "" |
|
472 |
+ |
|
473 |
+#. TRANSLATORS: Message-ID: Label.PASSPHRASE_GENERATION_LABEL |
|
474 |
+msgctxt "Label :: Help text :: Option group name" |
|
475 |
+msgid "Passphrase generation" |
|
476 |
+msgstr "" |
|
477 |
+ |
|
478 |
+#. TRANSLATORS: Message-ID: Label.STORAGE_MANAGEMENT_LABEL |
|
479 |
+msgctxt "Label :: Help text :: Option group name" |
|
480 |
+msgid "Storage management" |
|
481 |
+msgstr "" |
|
482 |
+ |
|
483 |
+#. TRANSLATORS: Message-ID: Label.VERSION_INFO_TEXT |
|
576 | 484 |
#, python-brace-format |
577 |
-msgctxt "Info message" |
|
578 |
-msgid "Successfully migrated to {path!r}." |
|
485 |
+msgctxt "Label :: Info Message" |
|
486 |
+msgid "{PROG_NAME} {VERSION}" |
|
579 | 487 |
msgstr "" |
580 | 488 |
|
581 |
-#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_CHECKING_MAC |
|
582 |
-msgctxt "Info message" |
|
583 |
-msgid "Checking MAC" |
|
489 |
+#. TRANSLATORS: There is no support for "yes" or "no" in other languages than English, so it is advised that your translation makes it clear that only the strings "y", "yes", "n" or "no" are supported, even if the prompt becomes a bit longer. |
|
490 |
+#. |
|
491 |
+#. Message-ID: Label.CONFIRM_THIS_CHOICE_PROMPT_TEXT |
|
492 |
+msgctxt "Label :: Interactive prompt" |
|
493 |
+msgid "Confirm this choice? (y/N)" |
|
584 | 494 |
msgstr "" |
585 | 495 |
|
586 |
-#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_DECRYPTING_CONTENTS |
|
587 |
-msgctxt "Info message" |
|
588 |
-msgid "Decrypting contents" |
|
496 |
+#. TRANSLATORS: This label is the heading of the list of suitable SSH keys. |
|
497 |
+#. |
|
498 |
+#. Message-ID: Label.SUITABLE_SSH_KEYS_LABEL |
|
499 |
+msgctxt "Label :: Interactive prompt" |
|
500 |
+msgid "Suitable SSH keys:" |
|
589 | 501 |
msgstr "" |
590 | 502 |
|
591 |
-#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_DERIVING_KEYS |
|
592 |
-msgctxt "Info message" |
|
593 |
-msgid "Deriving an encryption and signing key" |
|
503 |
+#. TRANSLATORS: Message-ID: Label.YOUR_SELECTION_PROMPT_TEXT |
|
504 |
+#, python-brace-format |
|
505 |
+msgctxt "Label :: Interactive prompt" |
|
506 |
+msgid "Your selection? (1-{n}, leave empty to abort)" |
|
594 | 507 |
msgstr "" |
595 | 508 |
|
596 |
-#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "IV" means "initialization vector", and "MAC" means "message authentication code". They are specifically cryptographic terms, as is "payload". The acronyms "IV" and "MAC" are assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate these terms or not, expanded or not. |
|
509 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. Here, we report on a single item (path and value) we discovered after decrypting the whole bucket. (We ensure the path and value are printable as-is.) |
|
597 | 510 |
#. |
598 |
-#. Message-ID: InfoMsgTemplate.VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC |
|
599 |
-msgctxt "Info message" |
|
600 |
-msgid "Parsing IV, payload and MAC from the file contents" |
|
511 |
+#. Message-ID: DebugMsgTemplate.BUCKET_ITEM_FOUND |
|
512 |
+#, python-brace-format |
|
513 |
+msgctxt "Debug message" |
|
514 |
+msgid "Found bucket item: {path} -> {value}" |
|
601 | 515 |
msgstr "" |
602 | 516 |
|
603 |
-#. TRANSLATORS: This is a short label that will be prepended to a warning message, e.g., "Deprecation warning: A subcommand will be required in v1.0." |
|
517 |
+#. TRANSLATORS: "AES256-CBC" and "PKCS#7" are, in essence, names of formats, and should not be translated. "IV" means "initialization vector", and is specifically a cryptographic term, as are "plaintext" and "ciphertext". |
|
604 | 518 |
#. |
605 |
-#. Message-ID: Label.DEPRECATION_WARNING_LABEL |
|
606 |
-msgctxt "Label :: Diagnostics :: Marker" |
|
607 |
-msgid "Deprecation warning" |
|
519 |
+#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_INFO |
|
520 |
+#, python-brace-format |
|
521 |
+msgctxt "Debug message" |
|
522 |
+msgid "Decrypt bucket item contents:\n" |
|
523 |
+"\n" |
|
524 |
+"Encryption key (master key): {enc_key}\n" |
|
525 |
+"Encryption cipher: AES256-CBC with PKCS#7 padding\n" |
|
526 |
+"Encryption IV: {iv}\n" |
|
527 |
+"Encrypted ciphertext: {ciphertext}\n" |
|
528 |
+"Plaintext: {plaintext}" |
|
608 | 529 |
msgstr "" |
609 | 530 |
|
610 |
-#. TRANSLATORS: This is a short label that will be prepended to a warning message, e.g., "Warning: An empty service name is not supported by vault(1)." |
|
531 |
+#. TRANSLATORS: Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_KEY_INFO |
|
532 |
+#, python-brace-format |
|
533 |
+msgctxt "Debug message" |
|
534 |
+msgid "Decrypt bucket item:\n" |
|
535 |
+"\n" |
|
536 |
+"Plaintext: {plaintext}\n" |
|
537 |
+"Encryption key (master key): {enc_key}\n" |
|
538 |
+"Signing key (master key): {sign_key}" |
|
539 |
+msgstr "" |
|
540 |
+ |
|
541 |
+#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
611 | 542 |
#. |
612 |
-#. Message-ID: Label.WARNING_LABEL |
|
613 |
-msgctxt "Label :: Diagnostics :: Marker" |
|
614 |
-msgid "Warning" |
|
543 |
+#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_MAC_INFO |
|
544 |
+#, python-brace-format |
|
545 |
+msgctxt "Debug message" |
|
546 |
+msgid "Decrypt bucket item contents:\n" |
|
547 |
+"\n" |
|
548 |
+"MAC key: {sign_key}\n" |
|
549 |
+"Authenticated content: {ciphertext}\n" |
|
550 |
+"Claimed MAC value: {claimed_mac}\n" |
|
551 |
+"Computed MAC value: {actual_mac}" |
|
615 | 552 |
msgstr "" |
616 | 553 |
|
617 |
-#. TRANSLATORS: This is one of two values of the settings_type metavar used in the CANNOT_UPDATE_SETTINGS_NO_SETTINGS entry. It is only used there. The full sentence then reads: "Cannot update the global settings without any given settings." |
|
554 |
+#. TRANSLATORS: "AES256-CBC" and "PKCS#7" are, in essence, names of formats, and should not be translated. "IV" means "initialization vector", and is specifically a cryptographic term, as are "plaintext" and "ciphertext". |
|
618 | 555 |
#. |
619 |
-#. Message-ID: Label.CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_GLOBAL |
|
620 |
-msgctxt "Label :: Error message :: Metavar" |
|
621 |
-msgid "global settings" |
|
556 |
+#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_SESSION_KEYS_INFO |
|
557 |
+#, python-brace-format |
|
558 |
+msgctxt "Debug message" |
|
559 |
+msgid "Decrypt bucket item session keys:\n" |
|
560 |
+"\n" |
|
561 |
+"Encryption key (master key): {enc_key}\n" |
|
562 |
+"Encryption cipher: AES256-CBC with PKCS#7 padding\n" |
|
563 |
+"Encryption IV: {iv}\n" |
|
564 |
+"Encrypted ciphertext: {ciphertext}\n" |
|
565 |
+"Plaintext: {plaintext}\n" |
|
566 |
+"Parsed plaintext: {code}" |
|
622 | 567 |
msgstr "" |
623 | 568 |
|
624 |
-#. TRANSLATORS: This is one of two values of the settings_type metavar used in the CANNOT_UPDATE_SETTINGS_NO_SETTINGS entry. It is only used there. The full sentence then reads: "Cannot update the service-specific settings without any given settings." |
|
569 |
+#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
625 | 570 |
#. |
626 |
-#. Message-ID: Label.CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_SERVICE |
|
627 |
-msgctxt "Label :: Error message :: Metavar" |
|
628 |
-msgid "service-specific settings" |
|
571 |
+#. Message-ID: DebugMsgTemplate.DECRYPT_BUCKET_ITEM_SESSION_KEYS_MAC_INFO |
|
572 |
+#, python-brace-format |
|
573 |
+msgctxt "Debug message" |
|
574 |
+msgid "Decrypt bucket item session keys:\n" |
|
575 |
+"\n" |
|
576 |
+"MAC key (master key): {sign_key}\n" |
|
577 |
+"Authenticated content: {ciphertext}\n" |
|
578 |
+"Claimed MAC value: {claimed_mac}\n" |
|
579 |
+"Computed MAC value: {actual_mac}" |
|
629 | 580 |
msgstr "" |
630 | 581 |
|
631 |
-#. TRANSLATORS: Message-ID: Label.CONFIGURATION_EPILOG |
|
632 |
-msgctxt "Label :: Help text :: Explanation" |
|
633 |
-msgid "Use $VISUAL or $EDITOR to configure the spawned editor." |
|
582 |
+#. TRANSLATORS: Message-ID: DebugMsgTemplate.DERIVED_MASTER_KEYS_KEYS |
|
583 |
+#, python-brace-format |
|
584 |
+msgctxt "Debug message" |
|
585 |
+msgid "Derived master keys' keys:\n" |
|
586 |
+"\n" |
|
587 |
+"Encryption key: {enc_key}\n" |
|
588 |
+"Signing key: {sign_key}\n" |
|
589 |
+"Password: {pw_bytes}\n" |
|
590 |
+"Function call: pbkdf2(algorithm={algorithm!r}, length={length!r}, salt={salt!r}, iterations={iterations!r})" |
|
634 | 591 |
msgstr "" |
635 | 592 |
|
636 |
-#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
593 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". Each "directory" in the path contains a list of children it claims to contain, and this list must be matched against the actual discovered items. Now, at the end, we actually confirm the claim. (We would have already thrown an error here otherwise.) |
|
637 | 594 |
#. |
638 |
-#. Message-ID: Label.DERIVEPASSPHRASE_01 |
|
639 |
-msgctxt "Label :: Help text :: Explanation" |
|
640 |
-msgid "Derive a strong passphrase, deterministically, from a master secret." |
|
595 |
+#. Message-ID: DebugMsgTemplate.DIRECTORY_CONTENTS_CHECK_OK |
|
596 |
+#, python-brace-format |
|
597 |
+msgctxt "Debug message" |
|
598 |
+msgid "Directory contents check OK: {path} -> {contents}" |
|
641 | 599 |
msgstr "" |
642 | 600 |
|
643 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_02 |
|
644 |
-msgctxt "Label :: Help text :: Explanation" |
|
645 |
-msgid "The currently implemented subcommands are \"vault\" (for the scheme used by vault) and \"export\" (for exporting foreign configuration data). See the respective `--help` output for instructions. If no subcommand is given, we default to \"vault\"." |
|
601 |
+#. TRANSLATORS: The MAC stands for "message authentication code", which guarantees the authenticity of the message to anyone who holds the corresponding key, similar to a digital signature. The acronym "MAC" is assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate this term or not, expanded or not. |
|
602 |
+#. |
|
603 |
+#. Message-ID: DebugMsgTemplate.MASTER_KEYS_DATA_MAC_INFO |
|
604 |
+#, python-brace-format |
|
605 |
+msgctxt "Debug message" |
|
606 |
+msgid "Master keys data:\n" |
|
607 |
+"\n" |
|
608 |
+"MAC key: {sign_key}\n" |
|
609 |
+"Authenticated content: {ciphertext}\n" |
|
610 |
+"Claimed MAC value: {claimed_mac}\n" |
|
611 |
+"Computed MAC value: {actual_mac}" |
|
646 | 612 |
msgstr "" |
647 | 613 |
|
648 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_03 |
|
649 |
-msgctxt "Label :: Help text :: Explanation" |
|
650 |
-msgid "Deprecation notice: Defaulting to \"vault\" is deprecated. Starting in v1.0, the subcommand must be specified explicitly." |
|
614 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". Each "directory" in the path contains a list of children it claims to contain, and this list must be matched against the actual discovered items. When emitting this message, we merely indicate that we saved the "claimed" list for this directory for later. |
|
615 |
+#. |
|
616 |
+#. Message-ID: DebugMsgTemplate.POSTPONING_DIRECTORY_CONTENTS_CHECK |
|
617 |
+#, python-brace-format |
|
618 |
+msgctxt "Debug message" |
|
619 |
+msgid "Postponing directory contents check: {path} -> {contents}" |
|
651 | 620 |
msgstr "" |
652 | 621 |
|
653 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EPILOG_01 |
|
654 |
-msgctxt "Label :: Help text :: Explanation" |
|
655 |
-msgid "Configuration is stored in a directory according to the `DERIVEPASSPHRASE_PATH` variable, which defaults to `~/.derivepassphrase` on UNIX-like systems and `C:\\Users\\<user>\\AppData\\Roaming\\Derivepassphrase` on Windows." |
|
622 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". We confirm that we set the entry at the given path to the given value. |
|
623 |
+#. |
|
624 |
+#. Message-ID: DebugMsgTemplate.SETTING_CONFIG_STRUCTURE_CONTENTS |
|
625 |
+#, python-brace-format |
|
626 |
+msgctxt "Debug message" |
|
627 |
+msgid "Setting contents: {path} -> {value}" |
|
656 | 628 |
msgstr "" |
657 | 629 |
|
658 |
-#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
630 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories, while "assembling" the items stored in the configuration according to the item's "path". We confirm that we set up a currently empty directory at the given path. |
|
659 | 631 |
#. |
660 |
-#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_01 |
|
661 |
-msgctxt "Label :: Help text :: Explanation" |
|
662 |
-msgid "Export a foreign configuration to standard output." |
|
632 |
+#. Message-ID: DebugMsgTemplate.SETTING_CONFIG_STRUCTURE_CONTENTS_EMPTY_DIRECTORY |
|
633 |
+#, python-brace-format |
|
634 |
+msgctxt "Debug message" |
|
635 |
+msgid "Setting contents (empty directory): {path}" |
|
663 | 636 |
msgstr "" |
664 | 637 |
|
665 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EXPORT_02 |
|
666 |
-msgctxt "Label :: Help text :: Explanation" |
|
667 |
-msgid "The only available subcommand is \"vault\", which implements the vault-native configuration scheme. If no subcommand is given, we default to \"vault\"." |
|
638 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there concerning the terms and thoughts on translating them. |
|
639 |
+#. |
|
640 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_CHECKING_MAC_DETAILS |
|
641 |
+#, python-brace-format |
|
642 |
+msgctxt "Debug message" |
|
643 |
+msgid "MAC details:\n" |
|
644 |
+"\n" |
|
645 |
+"MAC input: {mac_input}\n" |
|
646 |
+"Expected MAC: {mac}" |
|
668 | 647 |
msgstr "" |
669 | 648 |
|
670 |
-#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
649 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms. |
|
671 | 650 |
#. |
672 |
-#. Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_01 |
|
673 |
-msgctxt "Label :: Help text :: Explanation" |
|
674 |
-msgid "Export a vault-native configuration to standard output." |
|
651 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_INIT |
|
652 |
+#, python-brace-format |
|
653 |
+msgctxt "Debug message" |
|
654 |
+msgid "evp_bytestokey_md5 (initialization):\n" |
|
655 |
+"\n" |
|
656 |
+"Input: {data}\n" |
|
657 |
+"Salt: {salt}\n" |
|
658 |
+"Key size: {key_size}\n" |
|
659 |
+"IV size: {iv_size}\n" |
|
660 |
+"Buffer length: {buffer_length}\n" |
|
661 |
+"Buffer: {buffer}" |
|
675 | 662 |
msgstr "" |
676 | 663 |
|
677 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 |
|
664 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms.This function reports on the final results. |
|
665 |
+#. |
|
666 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_RESULT |
|
678 | 667 |
#, python-brace-format |
679 |
-msgctxt "Label :: Help text :: Explanation" |
|
680 |
-msgid "Depending on the configuration format, {path_metavar!s} may either be a file or a directory. We support the vault \"v0.2\", \"v0.3\" and \"storeroom\" formats." |
|
668 |
+msgctxt "Debug message" |
|
669 |
+msgid "evp_bytestokey_md5 (result):\n" |
|
670 |
+"\n" |
|
671 |
+"Encryption key: {enc_key}\n" |
|
672 |
+"IV: {iv}" |
|
681 | 673 |
msgstr "" |
682 | 674 |
|
683 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_EXPORT_VAULT_03 |
|
675 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories: in v0.2, the non-standard and deprecated "EVP_bytestokey" function from OpenSSL must be reimplemented from scratch. The terms "salt" and "IV" (initialization vector) are cryptographic terms.This function reports on the updated buffer length and contents after executing one round of hashing. |
|
676 |
+#. |
|
677 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_EVP_BYTESTOKEY_ROUND |
|
684 | 678 |
#, python-brace-format |
685 |
-msgctxt "Label :: Help text :: Explanation" |
|
686 |
-msgid "If {path_metavar!s} is explicitly given as `VAULT_PATH`, then use the `VAULT_PATH` environment variable to determine the correct path. (Use `./VAULT_PATH` or similar to indicate a file/directory actually named `VAULT_PATH`.)" |
|
679 |
+msgctxt "Debug message" |
|
680 |
+msgid "evp_bytestokey_md5 (round update):\n" |
|
681 |
+"\n" |
|
682 |
+"Buffer length: {buffer_length}\n" |
|
683 |
+"Buffer: {buffer}" |
|
687 | 684 |
msgstr "" |
688 | 685 |
|
689 |
-#. TRANSLATORS: This is the first paragraph of the command help text, but it also appears (in truncated form, if necessary) as one-line help text for this command. The translation should thus be as meaningful as possible even if truncated. |
|
686 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "padding" and "plaintext" are cryptographic terms. |
|
690 | 687 |
#. |
691 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_01 |
|
692 |
-msgctxt "Label :: Help text :: Explanation" |
|
693 |
-msgid "Derive a passphrase using the vault derivation scheme." |
|
688 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PADDED_PLAINTEXT |
|
689 |
+#, python-brace-format |
|
690 |
+msgctxt "Debug message" |
|
691 |
+msgid "Padded plaintext: {contents}" |
|
694 | 692 |
msgstr "" |
695 | 693 |
|
696 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_02 |
|
694 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there concerning the terms and thoughts on translating them. |
|
695 |
+#. |
|
696 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PARSE_BUFFER |
|
697 | 697 |
#, python-brace-format |
698 |
-msgctxt "Label :: Help text :: Explanation" |
|
699 |
-msgid "If operating on global settings, or importing/exporting settings, then {service_metavar!s} must be omitted. Otherwise it is required." |
|
698 |
+msgctxt "Debug message" |
|
699 |
+msgid "Buffer: {contents}\n" |
|
700 |
+"\n" |
|
701 |
+"IV: {iv}\n" |
|
702 |
+"Payload: {payload}\n" |
|
703 |
+"MAC: {mac}" |
|
700 | 704 |
msgstr "" |
701 | 705 |
|
702 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_EPILOG_01 |
|
703 |
-msgctxt "Label :: Help text :: Explanation" |
|
704 |
-msgid "WARNING: There is NO WAY to retrieve the generated passphrases if the master passphrase, the SSH key, or the exact passphrase settings are lost, short of trying out all possible combinations. You are STRONGLY advised to keep independent backups of the settings and the SSH key, if any." |
|
706 |
+#. TRANSLATORS: Message-ID: DebugMsgTemplate.VAULT_NATIVE_PBKDF2_CALL |
|
707 |
+#, python-brace-format |
|
708 |
+msgctxt "Debug message" |
|
709 |
+msgid "Master key derivation:\n" |
|
710 |
+"\n" |
|
711 |
+"PBKDF2 call: PBKDF2-HMAC(password={password!r}, salt={salt!r}, iterations={iterations!r}, key_size={key_size!r}, algorithm={algorithm!r})\n" |
|
712 |
+"Result (binary): {raw_result}\n" |
|
713 |
+"Result (hex key): {result_key!r}" |
|
705 | 714 |
msgstr "" |
706 | 715 |
|
707 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_EPILOG_02 |
|
708 |
-msgctxt "Label :: Help text :: Explanation" |
|
709 |
-msgid "The configuration is NOT encrypted, and you are STRONGLY discouraged from using a stored passphrase." |
|
716 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "plaintext" is a cryptographic term. |
|
717 |
+#. |
|
718 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_PLAINTEXT |
|
719 |
+#, python-brace-format |
|
720 |
+msgctxt "Debug message" |
|
721 |
+msgid "Plaintext: {contents}" |
|
710 | 722 |
msgstr "" |
711 | 723 |
|
712 |
-#. TRANSLATORS: This instruction text is shown above the user's old stored notes for this service, if any, if the recommended "modern" editor interface is used. The next line is the cut marking defined in Label.DERIVEPASSPHRASE_VAULT_NOTES_MARKER. |
|
724 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. It is preceded by the info message VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC and the debug message PARSING_NATIVE_PARSE_BUFFER; see the commentary there concerning the terms and thoughts on translating them. |
|
713 | 725 |
#. |
714 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_INSTRUCTION_TEXT |
|
715 |
-msgctxt "Label :: Help text :: Explanation" |
|
716 |
-msgid "# Enter notes below the line with the cut mark (ASCII scissors and\n" |
|
717 |
-"# dashes). Lines above the cut mark (such as this one) will be ignored.\n" |
|
718 |
-"#\n" |
|
719 |
-"# If you wish to clear the notes, leave everything beyond the cut mark\n" |
|
720 |
-"# blank. However, if you leave the *entire* file blank, also removing\n" |
|
721 |
-"# the cut mark, then the edit is aborted, and the old notes contents are\n" |
|
722 |
-"# retained.\n" |
|
723 |
-"#" |
|
726 |
+#. Message-ID: DebugMsgTemplate.VAULT_NATIVE_V02_PAYLOAD_MAC_POSTPROCESSING |
|
727 |
+#, python-brace-format |
|
728 |
+msgctxt "Debug message" |
|
729 |
+msgid "Postprocessing buffer (v0.2):\n" |
|
730 |
+"\n" |
|
731 |
+"Payload: {payload} (decoded from base64)\n" |
|
732 |
+"MAC: {mac} (decoded from hex)" |
|
724 | 733 |
msgstr "" |
725 | 734 |
|
726 |
-#. TRANSLATORS: This instruction text is shown if the vault(1)-compatible "legacy" editor interface is used and no previous notes exist. The interface does not support commentary in the notes, so we fill this with obvious placeholder text instead. (Please replace this with what *your* language/culture would obviously recognize as placeholder text.) |
|
735 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. After the respective items in the buckets have been decrypted, we then have a list of item paths plus contents to populate. This must be done in a certain order (we don't yet have an existing directory tree to rely on, but rather must build it on-the-fly), hence the term "assembling". |
|
727 | 736 |
#. |
728 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_LEGACY_INSTRUCTION_TEXT |
|
729 |
-msgctxt "Label :: Help text :: Explanation" |
|
730 |
-msgid "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." |
|
737 |
+#. Message-ID: InfoMsgTemplate.ASSEMBLING_CONFIG_STRUCTURE |
|
738 |
+msgctxt "Info message" |
|
739 |
+msgid "Assembling config structure" |
|
731 | 740 |
msgstr "" |
732 | 741 |
|
733 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
742 |
+#. TRANSLATORS: "fmt" is a string such as "v0.2" or "storeroom", indicating the format which we tried to load the vault configuration as. |
|
734 | 743 |
#. |
735 |
-#. Message-ID: Label.PASSPHRASE_GENERATION_EPILOG |
|
744 |
+#. Message-ID: InfoMsgTemplate.CANNOT_LOAD_AS_VAULT_CONFIG |
|
736 | 745 |
#, python-brace-format |
737 |
-msgctxt "Label :: Help text :: Explanation" |
|
738 |
-msgid "Use {metavar!s}=0 to exclude a character type from the output." |
|
746 |
+msgctxt "Info message" |
|
747 |
+msgid "Cannot load {path!r} as a {fmt} vault configuration." |
|
739 | 748 |
msgstr "" |
740 | 749 |
|
741 |
-#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH. |
|
750 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. Having "assembled" the configuration items according to their claimed paths and contents, we then check if the assembled structure is internally consistent. |
|
742 | 751 |
#. |
743 |
-#. Message-ID: Label.STORAGE_MANAGEMENT_EPILOG |
|
744 |
-#, python-brace-format |
|
745 |
-msgctxt "Label :: Help text :: Explanation" |
|
746 |
-msgid "Using \"-\" as {metavar!s} for standard input/standard output is supported." |
|
752 |
+#. Message-ID: InfoMsgTemplate.CHECKING_CONFIG_STRUCTURE_CONSISTENCY |
|
753 |
+msgctxt "Info message" |
|
754 |
+msgid "Checking config structure consistency" |
|
747 | 755 |
msgstr "" |
748 | 756 |
|
749 |
-#. TRANSLATORS: We use this format string to indicate, at the beginning of a command's help text, that this command is deprecated. |
|
757 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. The system stores entries in different "buckets" of a hash table. We parse the directory bucket by bucket. All buckets are numbered in hexadecimal, and typically there are 32 buckets, so 2-digit hex numbers. |
|
750 | 758 |
#. |
751 |
-#. Message-ID: Label.DEPRECATED_COMMAND_LABEL |
|
759 |
+#. Message-ID: InfoMsgTemplate.DECRYPTING_BUCKET |
|
752 | 760 |
#, python-brace-format |
753 |
-msgctxt "Label :: Help text :: Marker" |
|
754 |
-msgid "(Deprecated) {text}" |
|
761 |
+msgctxt "Info message" |
|
762 |
+msgid "Decrypting bucket {bucket_number}" |
|
755 | 763 |
msgstr "" |
756 | 764 |
|
757 |
-#. TRANSLATORS: The marker for separating the text from Label.DERIVEPASSPHRASE_VAULT_NOTES_INSTRUCTION_TEXT from the user's input (below the marker). The first line starting with this label marks the separation point. |
|
765 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "storeroom"-type configuration directories. `.keys` is a filename, from which data about the master keys for this configuration are loaded. |
|
758 | 766 |
#. |
759 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_MARKER |
|
760 |
-msgctxt "Label :: Help text :: Marker" |
|
761 |
-msgid "# - - - - - >8 - - - - - >8 - - - - - >8 - - - - - >8 - - - - -" |
|
767 |
+#. Message-ID: InfoMsgTemplate.PARSING_MASTER_KEYS_DATA |
|
768 |
+msgctxt "Info message" |
|
769 |
+msgid "Parsing master keys data from .keys" |
|
762 | 770 |
msgstr "" |
763 | 771 |
|
764 |
-#. TRANSLATORS: Message-ID: Label.EXPORT_VAULT_FORMAT_METAVAR_FMT |
|
765 |
-msgctxt "Label :: Help text :: Metavar :: export vault" |
|
766 |
-msgid "FMT" |
|
772 |
+#. TRANSLATORS: This message immediately follows an error message about a missing library that needs to be installed. The Python Package Index (PyPI) supports declaring sets of optional dependencies as "extras", so users installing from PyPI can request reinstallation with a named "extra" being enabled. This would then let the installer take care of the missing libraries automatically, hence this suggestion to PyPI users. |
|
773 |
+#. |
|
774 |
+#. Message-ID: InfoMsgTemplate.PIP_INSTALL_EXTRA |
|
775 |
+#, python-brace-format |
|
776 |
+msgctxt "Info message" |
|
777 |
+msgid "For users installing from PyPI, see the {extra_name!r} extra." |
|
767 | 778 |
msgstr "" |
768 | 779 |
|
769 |
-#. TRANSLATORS: See Label.EXPORT_VAULT_KEY_HELP_TEXT. |
|
780 |
+#. TRANSLATORS: This info message immediately follows the "Using deprecated v0.1-style ..." deprecation warning. |
|
770 | 781 |
#. |
771 |
-#. Message-ID: Label.EXPORT_VAULT_KEY_METAVAR_K |
|
772 |
-msgctxt "Label :: Help text :: Metavar :: export vault" |
|
773 |
-msgid "K" |
|
782 |
+#. Message-ID: InfoMsgTemplate.SUCCESSFULLY_MIGRATED |
|
783 |
+#, python-brace-format |
|
784 |
+msgctxt "Info message" |
|
785 |
+msgid "Successfully migrated to {path!r}." |
|
774 | 786 |
msgstr "" |
775 | 787 |
|
776 |
-#. TRANSLATORS: Used as "path_metavar" in Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 and others. |
|
777 |
-#. |
|
778 |
-#. Message-ID: Label.EXPORT_VAULT_METAVAR_PATH |
|
779 |
-msgctxt "Label :: Help text :: Metavar :: export vault" |
|
780 |
-msgid "PATH" |
|
788 |
+#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_CHECKING_MAC |
|
789 |
+msgctxt "Info message" |
|
790 |
+msgid "Checking MAC" |
|
781 | 791 |
msgstr "" |
782 | 792 |
|
783 |
-#. TRANSLATORS: This metavar is also used in a matching epilog. |
|
784 |
-#. |
|
785 |
-#. Message-ID: Label.PASSPHRASE_GENERATION_METAVAR_NUMBER |
|
786 |
-msgctxt "Label :: Help text :: Metavar :: vault" |
|
787 |
-msgid "NUMBER" |
|
793 |
+#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_DECRYPTING_CONTENTS |
|
794 |
+msgctxt "Info message" |
|
795 |
+msgid "Decrypting contents" |
|
788 | 796 |
msgstr "" |
789 | 797 |
|
790 |
-#. TRANSLATORS: This metavar is also used in multiple one-line help texts. |
|
791 |
-#. |
|
792 |
-#. Message-ID: Label.STORAGE_MANAGEMENT_METAVAR_PATH |
|
793 |
-msgctxt "Label :: Help text :: Metavar :: vault" |
|
794 |
-msgid "PATH" |
|
798 |
+#. TRANSLATORS: Message-ID: InfoMsgTemplate.VAULT_NATIVE_DERIVING_KEYS |
|
799 |
+msgctxt "Info message" |
|
800 |
+msgid "Deriving an encryption and signing key" |
|
795 | 801 |
msgstr "" |
796 | 802 |
|
797 |
-#. TRANSLATORS: This metavar is also used in multiple one-line help texts. |
|
803 |
+#. TRANSLATORS: This message is emitted by the vault configuration exporter for "native"-type configuration directories. "IV" means "initialization vector", and "MAC" means "message authentication code". They are specifically cryptographic terms, as is "payload". The acronyms "IV" and "MAC" are assumed to be well-known to the English target audience, or at least discoverable by them; they *are* asking for debug output, after all. Please use your judgement as to whether to translate these terms or not, expanded or not. |
|
798 | 804 |
#. |
799 |
-#. Message-ID: Label.VAULT_METAVAR_SERVICE |
|
800 |
-msgctxt "Label :: Help text :: Metavar :: vault" |
|
801 |
-msgid "SERVICE" |
|
805 |
+#. Message-ID: InfoMsgTemplate.VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC |
|
806 |
+msgctxt "Info message" |
|
807 |
+msgid "Parsing IV, payload and MAC from the file contents" |
|
802 | 808 |
msgstr "" |
803 | 809 |
|
804 |
-#. TRANSLATORS: Message-ID: Label.DEBUG_OPTION_HELP_TEXT |
|
805 |
-msgctxt "Label :: Help text :: One-line description" |
|
806 |
-msgid "also emit debug information (implies --verbose)" |
|
810 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.EDITING_NOTES_BUT_NOT_STORING_CONFIG |
|
811 |
+msgctxt "Warning message" |
|
812 |
+msgid "Specifying --notes without --config is ineffective. No notes will be edited." |
|
807 | 813 |
msgstr "" |
808 | 814 |
|
809 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT |
|
815 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.EMPTY_SERVICE_NOT_SUPPORTED |
|
810 | 816 |
#, python-brace-format |
811 |
-msgctxt "Label :: Help text :: One-line description" |
|
812 |
-msgid "save the given settings for {service_metavar!s}, or global" |
|
817 |
+msgctxt "Warning message" |
|
818 |
+msgid "An empty {service_metavar} is not supported by vault(1). For compatibility, this will be treated as if {service_metavar} was not supplied, i.e., it will error out, or operate on global settings." |
|
813 | 819 |
msgstr "" |
814 | 820 |
|
815 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
816 |
-#. |
|
817 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_DASH_HELP_TEXT |
|
821 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.EMPTY_SERVICE_SETTINGS_INACCESSIBLE |
|
818 | 822 |
#, python-brace-format |
819 |
-msgctxt "Label :: Help text :: One-line description" |
|
820 |
-msgid "ensure at least {metavar!s} \"-\" or \"_\" characters" |
|
821 |
-msgstr "" |
|
822 |
- |
|
823 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_ALL_HELP_TEXT |
|
824 |
-msgctxt "Label :: Help text :: One-line description" |
|
825 |
-msgid "delete all settings" |
|
826 |
-msgstr "" |
|
827 |
- |
|
828 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_GLOBALS_HELP_TEXT |
|
829 |
-msgctxt "Label :: Help text :: One-line description" |
|
830 |
-msgid "delete the global settings" |
|
823 |
+msgctxt "Warning message" |
|
824 |
+msgid "An empty {service_metavar} is not supported by vault(1). The empty-string service settings will be inaccessible and ineffective. To ensure that vault(1) and {PROG_NAME} see the settings, move them into the \"global\" section." |
|
831 | 825 |
msgstr "" |
832 | 826 |
|
833 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_DELETE_HELP_TEXT |
|
827 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
828 |
+#. |
|
829 |
+#. Message-ID: WarnMsgTemplate.FAILED_TO_MIGRATE_CONFIG |
|
834 | 830 |
#, python-brace-format |
835 |
-msgctxt "Label :: Help text :: One-line description" |
|
836 |
-msgid "delete the settings for {service_metavar!s}" |
|
831 |
+msgctxt "Warning message" |
|
832 |
+msgid "Failed to migrate to {path!r}: {error}: {filename!r}." |
|
837 | 833 |
msgstr "" |
838 | 834 |
|
839 |
-#. TRANSLATORS: The corresponding option is displayed as "--modern-editor-interface / --vault-legacy-editor-interface", so you may want to hint that the default (legacy) is the second of those options. Though the vault(1) legacy editor interface clearly has deficiencies and (in my opinion) should only be used for compatibility purposes, the one-line help text should try not to sound too judgmental, if possible. |
|
835 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
840 | 836 |
#. |
841 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EDITOR_INTERFACE_HELP_TEXT |
|
842 |
-msgctxt "Label :: Help text :: One-line description" |
|
843 |
-msgid "edit notes using the modern editor interface or the vault-like legacy one (default)" |
|
837 |
+#. Message-ID: WarnMsgTemplate.FAILED_TO_MIGRATE_CONFIG |
|
838 |
+#, python-brace-format |
|
839 |
+msgctxt "Warning message" |
|
840 |
+msgid "Failed to migrate to {path!r}: {error}." |
|
844 | 841 |
msgstr "" |
845 | 842 |
|
846 |
-#. TRANSLATORS: The corresponding option is displayed as "--export-as=json|sh", so json refers to the JSON format (default) and sh refers to the POSIX sh format. |
|
847 |
-#. |
|
848 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EXPORT_AS_HELP_TEXT |
|
849 |
-msgctxt "Label :: Help text :: One-line description" |
|
850 |
-msgid "when exporting, export as JSON (default) or POSIX sh" |
|
843 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.GLOBAL_PASSPHRASE_INEFFECTIVE |
|
844 |
+msgctxt "Warning message" |
|
845 |
+msgid "Setting a global passphrase is ineffective because a key is also set." |
|
851 | 846 |
msgstr "" |
852 | 847 |
|
853 |
-#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_SERVICE. |
|
854 |
-#. |
|
855 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_EXPORT_HELP_TEXT |
|
848 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.LEGACY_EDITOR_INTERFACE_NOTES_BACKUP |
|
856 | 849 |
#, python-brace-format |
857 |
-msgctxt "Label :: Help text :: One-line description" |
|
858 |
-msgid "export all saved settings to {metavar!s}" |
|
850 |
+msgctxt "Warning message" |
|
851 |
+msgid "A backup copy of the old notes was saved to {filename!r}. This is a safeguard against editing mistakes, because the vault(1)-compatible legacy editor interface does not allow aborting mid-edit, and because the notes were actually changed." |
|
859 | 852 |
msgstr "" |
860 | 853 |
|
861 |
-#. TRANSLATORS: The metavar is Label.STORAGE_MANAGEMENT_METAVAR_SERVICE. |
|
854 |
+#. TRANSLATORS: The key is a (vault) configuration key, in JSONPath syntax, typically "$.global" for the global passphrase or "$.services.service_name" or "$.services["service with spaces"]" for the services "service_name" and "service with spaces", respectively. The form is one of the four Unicode normalization forms: NFC, NFD, NFKC, NFKD. The asterisks are not special. Please feel free to substitute any other appropriate way to mark up emphasis of the word "displays". |
|
862 | 855 |
#. |
863 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT |
|
856 |
+#. Message-ID: WarnMsgTemplate.PASSPHRASE_NOT_NORMALIZED |
|
864 | 857 |
#, python-brace-format |
865 |
-msgctxt "Label :: Help text :: One-line description" |
|
866 |
-msgid "import saved settings from {metavar!s}" |
|
858 |
+msgctxt "Warning message" |
|
859 |
+msgid "The {key} passphrase is not {form}-normalized. Its serialization as a byte string may not be what you expect it to be, even if it *displays* correctly. Please make sure to double-check any derived passphrases for unexpected results." |
|
867 | 860 |
msgstr "" |
868 | 861 |
|
869 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_KEY_HELP_TEXT |
|
870 |
-msgctxt "Label :: Help text :: One-line description" |
|
871 |
-msgid "select a suitable SSH key from the SSH agent" |
|
862 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.SERVICE_NAME_INCOMPLETABLE |
|
863 |
+#, python-brace-format |
|
864 |
+msgctxt "Warning message" |
|
865 |
+msgid "The service name {service!r} contains an ASCII control character, which is not supported by our shell completion code. This service name will therefore not be available for completion on the command-line. You may of course still type it in manually in whatever format your shell accepts, but we highly recommend choosing a different service name instead." |
|
872 | 866 |
msgstr "" |
873 | 867 |
|
874 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
868 |
+#. TRANSLATORS: The key that is set need not necessarily be set at the service level; it may be a global key as well. |
|
875 | 869 |
#. |
876 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT |
|
870 |
+#. Message-ID: WarnMsgTemplate.SERVICE_PASSPHRASE_INEFFECTIVE |
|
877 | 871 |
#, python-brace-format |
878 |
-msgctxt "Label :: Help text :: One-line description" |
|
879 |
-msgid "ensure a passphrase length of {metavar!s} characters" |
|
872 |
+msgctxt "Warning message" |
|
873 |
+msgid "Setting a service passphrase is ineffective because a key is also set: {service}." |
|
880 | 874 |
msgstr "" |
881 | 875 |
|
882 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
883 |
-#. |
|
884 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_LOWER_HELP_TEXT |
|
876 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.STEP_REMOVE_INEFFECTIVE_VALUE |
|
885 | 877 |
#, python-brace-format |
886 |
-msgctxt "Label :: Help text :: One-line description" |
|
887 |
-msgid "ensure at least {metavar!s} lowercase characters" |
|
878 |
+msgctxt "Warning message" |
|
879 |
+msgid "Removing ineffective setting {path} = {old}." |
|
888 | 880 |
msgstr "" |
889 | 881 |
|
890 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_NOTES_HELP_TEXT |
|
882 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.STEP_REPLACE_INVALID_VALUE |
|
891 | 883 |
#, python-brace-format |
892 |
-msgctxt "Label :: Help text :: One-line description" |
|
893 |
-msgid "spawn an editor to edit notes for {service_metavar!s}" |
|
884 |
+msgctxt "Warning message" |
|
885 |
+msgid "Replacing invalid value {old} for key {path} with {new}." |
|
894 | 886 |
msgstr "" |
895 | 887 |
|
896 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
897 |
-#. |
|
898 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_NUMBER_HELP_TEXT |
|
888 |
+#. TRANSLATORS: Message-ID: WarnMsgTemplate.V01_STYLE_CONFIG |
|
899 | 889 |
#, python-brace-format |
900 |
-msgctxt "Label :: Help text :: One-line description" |
|
901 |
-msgid "ensure at least {metavar!s} digits" |
|
890 |
+msgctxt "Warning message :: Deprecation" |
|
891 |
+msgid "Using deprecated v0.1-style config file {old!r}, instead of v0.2-style {new!r}. Support for v0.1-style config filenames will be removed in v1.0." |
|
902 | 892 |
msgstr "" |
903 | 893 |
|
904 |
-#. TRANSLATORS: The corresponding option is displayed as "--overwrite-existing / --merge-existing", so you may want to hint that the default (merge) is the second of those options. |
|
894 |
+#. TRANSLATORS: This deprecation warning may be issued at any level, i.e. we may actually be talking about subcommands, or sub-subcommands, or sub-sub-subcommands, etc., which is what the "here" is supposed to indicate. |
|
905 | 895 |
#. |
906 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_OVERWRITE_HELP_TEXT |
|
907 |
-msgctxt "Label :: Help text :: One-line description" |
|
908 |
-msgid "overwrite or merge (default) the existing configuration" |
|
909 |
-msgstr "" |
|
910 |
- |
|
911 |
-#. TRANSLATORS: Message-ID: Label.DERIVEPASSPHRASE_VAULT_PHRASE_HELP_TEXT |
|
912 |
-msgctxt "Label :: Help text :: One-line description" |
|
913 |
-msgid "prompt for a master passphrase" |
|
896 |
+#. Message-ID: WarnMsgTemplate.V10_SUBCOMMAND_REQUIRED |
|
897 |
+msgctxt "Warning message :: Deprecation" |
|
898 |
+msgid "A subcommand will be required here in v1.0. See --help for available subcommands. Defaulting to subcommand \"vault\"." |
|
914 | 899 |
msgstr "" |
915 | 900 |
|
916 |
-#. TRANSLATORS: The corresponding option is displayed as "--print-notes-before / --print-notes-after", so you may want to hint that the default (after) is the second of those options. |
|
901 |
+#. TRANSLATORS: "loaded keys" being keys loaded into the agent. |
|
917 | 902 |
#. |
918 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_PRINT_NOTES_BEFORE_HELP_TEXT |
|
919 |
-msgctxt "Label :: Help text :: One-line description" |
|
920 |
-msgid "print the service notes (if any) before or after (default) the existing configuration" |
|
903 |
+#. Message-ID: ErrMsgTemplate.AGENT_REFUSED_LIST_KEYS |
|
904 |
+msgctxt "Error message" |
|
905 |
+msgid "The SSH agent failed to or refused to supply a list of loaded keys." |
|
921 | 906 |
msgstr "" |
922 | 907 |
|
923 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
908 |
+#. TRANSLATORS: The message to be signed is the vault UUID, but there's no space to explain that here, so ideally the error message does not go into detail. |
|
924 | 909 |
#. |
925 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_REPEAT_HELP_TEXT |
|
926 |
-#, python-brace-format |
|
927 |
-msgctxt "Label :: Help text :: One-line description" |
|
928 |
-msgid "forbid any run of {metavar!s} identical characters" |
|
910 |
+#. Message-ID: ErrMsgTemplate.AGENT_REFUSED_SIGNATURE |
|
911 |
+msgctxt "Error message" |
|
912 |
+msgid "The SSH agent failed to or refused to issue a signature with the selected key, necessary for deriving a service passphrase." |
|
929 | 913 |
msgstr "" |
930 | 914 |
|
931 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
915 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
932 | 916 |
#. |
933 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_SPACE_HELP_TEXT |
|
917 |
+#. Message-ID: ErrMsgTemplate.CANNOT_CONNECT_TO_AGENT |
|
934 | 918 |
#, python-brace-format |
935 |
-msgctxt "Label :: Help text :: One-line description" |
|
936 |
-msgid "ensure at least {metavar!s} spaces" |
|
919 |
+msgctxt "Error message" |
|
920 |
+msgid "Cannot connect to the SSH agent: {error}: {filename!r}." |
|
937 | 921 |
msgstr "" |
938 | 922 |
|
939 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
923 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
940 | 924 |
#. |
941 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_SYMBOL_HELP_TEXT |
|
925 |
+#. Message-ID: ErrMsgTemplate.CANNOT_CONNECT_TO_AGENT |
|
942 | 926 |
#, python-brace-format |
943 |
-msgctxt "Label :: Help text :: One-line description" |
|
944 |
-msgid "ensure at least {metavar!s} symbol characters" |
|
927 |
+msgctxt "Error message" |
|
928 |
+msgid "Cannot connect to the SSH agent: {error}." |
|
945 | 929 |
msgstr "" |
946 | 930 |
|
947 |
-#. TRANSLATORS: The corresponding option is displayed as "--unset=phrase|key|...|symbol", so the "given setting" is referring to "phrase", "key", "lower", ..., or "symbol", respectively. "with --config" here means that the user must also specify "--config" for this option to have any effect. |
|
931 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
948 | 932 |
#. |
949 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_UNSET_HELP_TEXT |
|
950 |
-msgctxt "Label :: Help text :: One-line description" |
|
951 |
-msgid "with --config, also unsets the given setting; may be specified multiple times" |
|
933 |
+#. Message-ID: ErrMsgTemplate.CANNOT_DECODEIMPORT_VAULT_SETTINGS |
|
934 |
+#, python-brace-format |
|
935 |
+msgctxt "Error message" |
|
936 |
+msgid "Cannot import vault settings: cannot decode JSON: {error}." |
|
952 | 937 |
msgstr "" |
953 | 938 |
|
954 |
-#. TRANSLATORS: The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER. |
|
939 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
955 | 940 |
#. |
956 |
-#. Message-ID: Label.DERIVEPASSPHRASE_VAULT_UPPER_HELP_TEXT |
|
941 |
+#. Message-ID: ErrMsgTemplate.CANNOT_EXPORT_VAULT_SETTINGS |
|
957 | 942 |
#, python-brace-format |
958 |
-msgctxt "Label :: Help text :: One-line description" |
|
959 |
-msgid "ensure at least {metavar!s} uppercase characters" |
|
943 |
+msgctxt "Error message" |
|
944 |
+msgid "Cannot export vault settings: {error}: {filename!r}." |
|
960 | 945 |
msgstr "" |
961 | 946 |
|
962 |
-#. TRANSLATORS: See EXPORT_VAULT_FORMAT_HELP_TEXT. The format names/labels "v0.3", "v0.2" and "storeroom" should not be translated. |
|
947 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
963 | 948 |
#. |
964 |
-#. Message-ID: Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT |
|
965 |
-msgctxt "Label :: Help text :: One-line description" |
|
966 |
-msgid "(default: v0.3, v0.2, storeroom)" |
|
949 |
+#. Message-ID: ErrMsgTemplate.CANNOT_EXPORT_VAULT_SETTINGS |
|
950 |
+#, python-brace-format |
|
951 |
+msgctxt "Error message" |
|
952 |
+msgid "Cannot export vault settings: {error}." |
|
967 | 953 |
msgstr "" |
968 | 954 |
|
969 |
-#. TRANSLATORS: The defaults_hint is Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT, the metavar is Label.EXPORT_VAULT_FORMAT_METAVAR_FMT. |
|
955 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
970 | 956 |
#. |
971 |
-#. Message-ID: Label.EXPORT_VAULT_FORMAT_HELP_TEXT |
|
957 |
+#. Message-ID: ErrMsgTemplate.CANNOT_IMPORT_VAULT_SETTINGS |
|
972 | 958 |
#, python-brace-format |
973 |
-msgctxt "Label :: Help text :: One-line description" |
|
974 |
-msgid "try the following storage format {metavar!s}; may be specified multiple times, formats will be tried in order {defaults_hint!s}" |
|
959 |
+msgctxt "Error message" |
|
960 |
+msgid "Cannot import vault settings: {error}: {filename!r}." |
|
975 | 961 |
msgstr "" |
976 | 962 |
|
977 |
-#. TRANSLATORS: See EXPORT_VAULT_KEY_HELP_TEXT. |
|
963 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
978 | 964 |
#. |
979 |
-#. Message-ID: Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT |
|
980 |
-msgctxt "Label :: Help text :: One-line description" |
|
981 |
-msgid "(default: check the `VAULT_KEY`, `LOGNAME`, `USER`, or `USERNAME` environment variables)" |
|
965 |
+#. Message-ID: ErrMsgTemplate.CANNOT_IMPORT_VAULT_SETTINGS |
|
966 |
+#, python-brace-format |
|
967 |
+msgctxt "Error message" |
|
968 |
+msgid "Cannot import vault settings: {error}." |
|
982 | 969 |
msgstr "" |
983 | 970 |
|
984 |
-#. TRANSLATORS: The defaults_hint is Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT, the metavar is Label.EXPORT_VAULT_KEY_METAVAR_K. |
|
971 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
985 | 972 |
#. |
986 |
-#. Message-ID: Label.EXPORT_VAULT_KEY_HELP_TEXT |
|
973 |
+#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_USER_CONFIG |
|
987 | 974 |
#, python-brace-format |
988 |
-msgctxt "Label :: Help text :: One-line description" |
|
989 |
-msgid "use {metavar!s} as the storage master key {defaults_hint!s}" |
|
990 |
-msgstr "" |
|
991 |
- |
|
992 |
-#. TRANSLATORS: Message-ID: Label.HELP_OPTION_HELP_TEXT |
|
993 |
-msgctxt "Label :: Help text :: One-line description" |
|
994 |
-msgid "show this help text, then exit" |
|
995 |
-msgstr "" |
|
996 |
- |
|
997 |
-#. TRANSLATORS: Message-ID: Label.QUIET_OPTION_HELP_TEXT |
|
998 |
-msgctxt "Label :: Help text :: One-line description" |
|
999 |
-msgid "suppress even warnings, emit only errors" |
|
975 |
+msgctxt "Error message" |
|
976 |
+msgid "Cannot load user config: {error}: {filename!r}." |
|
1000 | 977 |
msgstr "" |
1001 | 978 |
|
1002 |
-#. TRANSLATORS: Message-ID: Label.VERBOSE_OPTION_HELP_TEXT |
|
1003 |
-msgctxt "Label :: Help text :: One-line description" |
|
1004 |
-msgid "emit extra/progress information to standard error" |
|
979 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
980 |
+#. |
|
981 |
+#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_USER_CONFIG |
|
982 |
+#, python-brace-format |
|
983 |
+msgctxt "Error message" |
|
984 |
+msgid "Cannot load user config: {error}." |
|
1005 | 985 |
msgstr "" |
1006 | 986 |
|
1007 |
-#. TRANSLATORS: Message-ID: Label.VERSION_OPTION_HELP_TEXT |
|
1008 |
-msgctxt "Label :: Help text :: One-line description" |
|
1009 |
-msgid "show applicable version information, then exit" |
|
987 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
988 |
+#. |
|
989 |
+#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_VAULT_SETTINGS |
|
990 |
+#, python-brace-format |
|
991 |
+msgctxt "Error message" |
|
992 |
+msgid "Cannot load vault settings: {error}: {filename!r}." |
|
1010 | 993 |
msgstr "" |
1011 | 994 |
|
1012 |
-#. TRANSLATORS: Message-ID: Label.COMMANDS_LABEL |
|
1013 |
-msgctxt "Label :: Help text :: Option group name" |
|
1014 |
-msgid "Commands" |
|
995 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
996 |
+#. |
|
997 |
+#. Message-ID: ErrMsgTemplate.CANNOT_LOAD_VAULT_SETTINGS |
|
998 |
+#, python-brace-format |
|
999 |
+msgctxt "Error message" |
|
1000 |
+msgid "Cannot load vault settings: {error}." |
|
1015 | 1001 |
msgstr "" |
1016 | 1002 |
|
1017 |
-#. TRANSLATORS: Message-ID: Label.COMPATIBILITY_OPTION_LABEL |
|
1018 |
-msgctxt "Label :: Help text :: Option group name" |
|
1019 |
-msgid "Compatibility and extension options" |
|
1003 |
+#. TRANSLATORS: Unlike the "Cannot load {path!r} as a {fmt} vault configuration." message, *this* error message is emitted when we have tried loading the path in each of our supported formats, and failed. The user will thus see the above "Cannot load ..." warning message potentially multiple times, and this error message at the very bottom. |
|
1004 |
+#. |
|
1005 |
+#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG |
|
1006 |
+#, python-brace-format |
|
1007 |
+msgctxt "Error message" |
|
1008 |
+msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory." |
|
1020 | 1009 |
msgstr "" |
1021 | 1010 |
|
1022 |
-#. TRANSLATORS: Message-ID: Label.CONFIGURATION_LABEL |
|
1023 |
-msgctxt "Label :: Help text :: Option group name" |
|
1024 |
-msgid "Configuration" |
|
1011 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1012 |
+#. |
|
1013 |
+#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG_OSERROR |
|
1014 |
+#, python-brace-format |
|
1015 |
+msgctxt "Error message" |
|
1016 |
+msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory: {error}: {filename!r}." |
|
1025 | 1017 |
msgstr "" |
1026 | 1018 |
|
1027 |
-#. TRANSLATORS: Message-ID: Label.LOGGING_LABEL |
|
1028 |
-msgctxt "Label :: Help text :: Option group name" |
|
1029 |
-msgid "Logging" |
|
1019 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1020 |
+#. |
|
1021 |
+#. Message-ID: ErrMsgTemplate.CANNOT_PARSE_AS_VAULT_CONFIG_OSERROR |
|
1022 |
+#, python-brace-format |
|
1023 |
+msgctxt "Error message" |
|
1024 |
+msgid "Cannot parse {path!r} as a valid vault-native configuration file/directory: {error}." |
|
1030 | 1025 |
msgstr "" |
1031 | 1026 |
|
1032 |
-#. TRANSLATORS: Message-ID: Label.OPTIONS_LABEL |
|
1033 |
-msgctxt "Label :: Help text :: Option group name" |
|
1034 |
-msgid "Options" |
|
1027 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1028 |
+#. |
|
1029 |
+#. Message-ID: ErrMsgTemplate.CANNOT_STORE_VAULT_SETTINGS |
|
1030 |
+#, python-brace-format |
|
1031 |
+msgctxt "Error message" |
|
1032 |
+msgid "Cannot store vault settings: {error}: {filename!r}." |
|
1035 | 1033 |
msgstr "" |
1036 | 1034 |
|
1037 |
-#. TRANSLATORS: Message-ID: Label.OTHER_OPTIONS_LABEL |
|
1038 |
-msgctxt "Label :: Help text :: Option group name" |
|
1039 |
-msgid "Other options" |
|
1035 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1036 |
+#. |
|
1037 |
+#. Message-ID: ErrMsgTemplate.CANNOT_STORE_VAULT_SETTINGS |
|
1038 |
+#, python-brace-format |
|
1039 |
+msgctxt "Error message" |
|
1040 |
+msgid "Cannot store vault settings: {error}." |
|
1040 | 1041 |
msgstr "" |
1041 | 1042 |
|
1042 |
-#. TRANSLATORS: Message-ID: Label.PASSPHRASE_GENERATION_LABEL |
|
1043 |
-msgctxt "Label :: Help text :: Option group name" |
|
1044 |
-msgid "Passphrase generation" |
|
1043 |
+#. TRANSLATORS: This error message is used whenever we cannot make any sense of a response from the SSH agent because the response is ill-formed (truncated, improperly encoded, etc.) or otherwise violates the communications protocol. Well-formed responses that adhere to the protocol, even if they indicate that the requested operation failed, are handled with a different error message. |
|
1044 |
+#. |
|
1045 |
+#. Message-ID: ErrMsgTemplate.CANNOT_UNDERSTAND_AGENT |
|
1046 |
+msgctxt "Error message" |
|
1047 |
+msgid "Cannot understand the SSH agent's response because it violates the communication protocol." |
|
1045 | 1048 |
msgstr "" |
1046 | 1049 |
|
1047 |
-#. TRANSLATORS: Message-ID: Label.STORAGE_MANAGEMENT_LABEL |
|
1048 |
-msgctxt "Label :: Help text :: Option group name" |
|
1049 |
-msgid "Storage management" |
|
1050 |
+#. TRANSLATORS: The settings_type metavar contains translations for either "global settings" or "service-specific settings"; see the CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_GLOBAL and CANNOT_UPDATE_SETTINGS_METAVAR_SETTINGS_TYPE_SERVICE entries. The first sentence will thus read either "Cannot update the global settings without any given settings." or "Cannot update the service-specific settings without any given settings.". You may update this entry, and the two metavar entries, in any way you see fit that achieves the desired translations of the first sentence. |
|
1051 |
+#. |
|
1052 |
+#. Message-ID: ErrMsgTemplate.CANNOT_UPDATE_SETTINGS_NO_SETTINGS |
|
1053 |
+#, python-brace-format |
|
1054 |
+msgctxt "Error message" |
|
1055 |
+msgid "Cannot update the {settings_type} without any given settings. You must specify at least one of --lower, ..., --symbol, --notes, or --phrase or --key." |
|
1050 | 1056 |
msgstr "" |
1051 | 1057 |
|
1052 |
-#. TRANSLATORS: Message-ID: Label.VERSION_INFO_TEXT |
|
1058 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1059 |
+#. |
|
1060 |
+#. Message-ID: ErrMsgTemplate.INVALID_USER_CONFIG |
|
1053 | 1061 |
#, python-brace-format |
1054 |
-msgctxt "Label :: Info Message" |
|
1055 |
-msgid "{PROG_NAME!s} {VERSION}" |
|
1062 |
+msgctxt "Error message" |
|
1063 |
+msgid "The user configuration file is invalid. {error}: {filename!r}." |
|
1056 | 1064 |
msgstr "" |
1057 | 1065 |
|
1058 |
-#. TRANSLATORS: There is no support for "yes" or "no" in other languages than English, so it is advised that your translation makes it clear that only the strings "y", "yes", "n" or "no" are supported, even if the prompt becomes a bit longer. |
|
1066 |
+#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1059 | 1067 |
#. |
1060 |
-#. Message-ID: Label.CONFIRM_THIS_CHOICE_PROMPT_TEXT |
|
1061 |
-msgctxt "Label :: Interactive prompt" |
|
1062 |
-msgid "Confirm this choice? (y/N)" |
|
1068 |
+#. Message-ID: ErrMsgTemplate.INVALID_USER_CONFIG |
|
1069 |
+#, python-brace-format |
|
1070 |
+msgctxt "Error message" |
|
1071 |
+msgid "The user configuration file is invalid. {error}." |
|
1063 | 1072 |
msgstr "" |
1064 | 1073 |
|
1065 |
-#. TRANSLATORS: This label is the heading of the list of suitable SSH keys. |
|
1074 |
+#. TRANSLATORS: This error message is a reaction to a validator function saying *that* the configuration is not valid, but not *how* it is not valid. The configuration file is principally parsable, however. |
|
1066 | 1075 |
#. |
1067 |
-#. Message-ID: Label.SUITABLE_SSH_KEYS_LABEL |
|
1068 |
-msgctxt "Label :: Interactive prompt" |
|
1069 |
-msgid "Suitable SSH keys:" |
|
1076 |
+#. Message-ID: ErrMsgTemplate.INVALID_VAULT_CONFIG |
|
1077 |
+#, python-brace-format |
|
1078 |
+msgctxt "Error message" |
|
1079 |
+msgid "Invalid vault config: {config!r}." |
|
1070 | 1080 |
msgstr "" |
1071 | 1081 |
|
1072 |
-#. TRANSLATORS: Message-ID: Label.YOUR_SELECTION_PROMPT_TEXT |
|
1082 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.MISSING_MODULE |
|
1073 | 1083 |
#, python-brace-format |
1074 |
-msgctxt "Label :: Interactive prompt" |
|
1075 |
-msgid "Your selection? (1-{n}, leave empty to abort)" |
|
1084 |
+msgctxt "Error message" |
|
1085 |
+msgid "Cannot load the required Python module {module!r}." |
|
1076 | 1086 |
msgstr "" |
1077 | 1087 |
|
1078 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.EDITING_NOTES_BUT_NOT_STORING_CONFIG |
|
1079 |
-msgctxt "Warning message" |
|
1080 |
-msgid "Specifying --notes without --config is ineffective. No notes will be edited." |
|
1088 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_AF_UNIX |
|
1089 |
+msgctxt "Error message" |
|
1090 |
+msgid "Cannot connect to an SSH agent because this Python version does not support UNIX domain sockets." |
|
1081 | 1091 |
msgstr "" |
1082 | 1092 |
|
1083 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.EMPTY_SERVICE_NOT_SUPPORTED |
|
1084 |
-#, python-brace-format |
|
1085 |
-msgctxt "Warning message" |
|
1086 |
-msgid "An empty {service_metavar!s} is not supported by vault(1). For compatibility, this will be treated as if {service_metavar!s} was not supplied, i.e., it will error out, or operate on global settings." |
|
1093 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_KEY_OR_PHRASE |
|
1094 |
+msgctxt "Error message" |
|
1095 |
+msgid "No passphrase or key was given in the configuration. In this case, the --phrase or --key argument is required." |
|
1087 | 1096 |
msgstr "" |
1088 | 1097 |
|
1089 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.EMPTY_SERVICE_SETTINGS_INACCESSIBLE |
|
1090 |
-#, python-brace-format |
|
1091 |
-msgctxt "Warning message" |
|
1092 |
-msgid "An empty {service_metavar!s} is not supported by vault(1). The empty-string service settings will be inaccessible and ineffective. To ensure that vault(1) and {PROG_NAME!s} see the settings, move them into the \"global\" section." |
|
1098 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_SSH_AGENT_FOUND |
|
1099 |
+msgctxt "Error message" |
|
1100 |
+msgid "Cannot find any running SSH agent because SSH_AUTH_SOCK is not set." |
|
1093 | 1101 |
msgstr "" |
1094 | 1102 |
|
1095 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1096 |
-#. |
|
1097 |
-#. Message-ID: WarnMsgTemplate.FAILED_TO_MIGRATE_CONFIG |
|
1103 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.NO_SUITABLE_SSH_KEYS |
|
1098 | 1104 |
#, python-brace-format |
1099 |
-msgctxt "Warning message" |
|
1100 |
-msgid "Failed to migrate to {path!r}: {error!s}: {filename!r}." |
|
1105 |
+msgctxt "Error message" |
|
1106 |
+msgid "The SSH agent contains no keys suitable for {PROG_NAME}." |
|
1101 | 1107 |
msgstr "" |
1102 | 1108 |
|
1103 |
-#. TRANSLATORS: "error" is supplied by the operating system (errno/strerror). |
|
1109 |
+#. TRANSLATORS: The params are long-form command-line option names. Typical example: "--key is mutually exclusive with --phrase." |
|
1104 | 1110 |
#. |
1105 |
-#. Message-ID: WarnMsgTemplate.FAILED_TO_MIGRATE_CONFIG |
|
1111 |
+#. Message-ID: ErrMsgTemplate.PARAMS_MUTUALLY_EXCLUSIVE |
|
1106 | 1112 |
#, python-brace-format |
1107 |
-msgctxt "Warning message" |
|
1108 |
-msgid "Failed to migrate to {path!r}: {error!s}." |
|
1113 |
+msgctxt "Error message" |
|
1114 |
+msgid "{param1} is mutually exclusive with {param2}." |
|
1109 | 1115 |
msgstr "" |
1110 | 1116 |
|
1111 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.GLOBAL_PASSPHRASE_INEFFECTIVE |
|
1112 |
-msgctxt "Warning message" |
|
1113 |
-msgid "Setting a global passphrase is ineffective because a key is also set." |
|
1117 |
+#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
1118 |
+#. |
|
1119 |
+#. Message-ID: ErrMsgTemplate.PARAMS_NEEDS_SERVICE |
|
1120 |
+#, python-brace-format |
|
1121 |
+msgctxt "Error message" |
|
1122 |
+msgid "{param} requires a {service_metavar}." |
|
1114 | 1123 |
msgstr "" |
1115 | 1124 |
|
1116 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.LEGACY_EDITOR_INTERFACE_NOTES_BACKUP |
|
1125 |
+#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
1126 |
+#. |
|
1127 |
+#. Message-ID: ErrMsgTemplate.PARAMS_NEEDS_SERVICE_OR_CONFIG |
|
1117 | 1128 |
#, python-brace-format |
1118 |
-msgctxt "Warning message" |
|
1119 |
-msgid "A backup copy of the old notes was saved to {filename!r}. This is a safeguard against editing mistakes, because the vault(1)-compatible legacy editor interface does not allow aborting mid-edit, and because the notes were actually changed." |
|
1129 |
+msgctxt "Error message" |
|
1130 |
+msgid "{param} requires a {service_metavar} or --config." |
|
1120 | 1131 |
msgstr "" |
1121 | 1132 |
|
1122 |
-#. TRANSLATORS: The key is a (vault) configuration key, in JSONPath syntax, typically "$.global" for the global passphrase or "$.services.service_name" or "$.services["service with spaces"]" for the services "service_name" and "service with spaces", respectively. The form is one of the four Unicode normalization forms: NFC, NFD, NFKC, NFKD. The asterisks are not special. Please feel free to substitute any other appropriate way to mark up emphasis of the word "displays". |
|
1133 |
+#. TRANSLATORS: The param is a long-form command-line option name, the metavar is Label.VAULT_METAVAR_SERVICE. |
|
1123 | 1134 |
#. |
1124 |
-#. Message-ID: WarnMsgTemplate.PASSPHRASE_NOT_NORMALIZED |
|
1135 |
+#. Message-ID: ErrMsgTemplate.PARAMS_NO_SERVICE |
|
1125 | 1136 |
#, python-brace-format |
1126 |
-msgctxt "Warning message" |
|
1127 |
-msgid "The {key!s} passphrase is not {form!s}-normalized. Its serialization as a byte string may not be what you expect it to be, even if it *displays* correctly. Please make sure to double-check any derived passphrases for unexpected results." |
|
1137 |
+msgctxt "Error message" |
|
1138 |
+msgid "{param} does not take a {service_metavar} argument." |
|
1128 | 1139 |
msgstr "" |
1129 | 1140 |
|
1130 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.SERVICE_NAME_INCOMPLETABLE |
|
1141 |
+#. TRANSLATORS: The metavar is Label.VAULT_METAVAR_SERVICE. |
|
1142 |
+#. |
|
1143 |
+#. Message-ID: ErrMsgTemplate.SERVICE_REQUIRED |
|
1131 | 1144 |
#, python-brace-format |
1132 |
-msgctxt "Warning message" |
|
1133 |
-msgid "The service name {service!r} contains an ASCII control character, which is not supported by our shell completion code. This service name will therefore not be available for completion on the command-line. You may of course still type it in manually in whatever format your shell accepts, but we highly recommend choosing a different service name instead." |
|
1145 |
+msgctxt "Error message" |
|
1146 |
+msgid "Deriving a passphrase requires a {service_metavar}." |
|
1134 | 1147 |
msgstr "" |
1135 | 1148 |
|
1136 |
-#. TRANSLATORS: The key that is set need not necessarily be set at the service level; it may be a global key as well. |
|
1149 |
+#. TRANSLATORS: The rephrasing "Attempted to unset and set the same setting (--unset={setting} --{setting}=...) at the same time."may or may not be more suitable as a basis for translation instead. |
|
1137 | 1150 |
#. |
1138 |
-#. Message-ID: WarnMsgTemplate.SERVICE_PASSPHRASE_INEFFECTIVE |
|
1151 |
+#. Message-ID: ErrMsgTemplate.SET_AND_UNSET_SAME_SETTING |
|
1139 | 1152 |
#, python-brace-format |
1140 |
-msgctxt "Warning message" |
|
1141 |
-msgid "Setting a service passphrase is ineffective because a key is also set: {service!s}." |
|
1153 |
+msgctxt "Error message" |
|
1154 |
+msgid "Attempted to unset and set --{setting} at the same time." |
|
1142 | 1155 |
msgstr "" |
1143 | 1156 |
|
1144 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.STEP_REMOVE_INEFFECTIVE_VALUE |
|
1145 |
-#, python-brace-format |
|
1146 |
-msgctxt "Warning message" |
|
1147 |
-msgid "Removing ineffective setting {path!s} = {old!s}." |
|
1157 |
+#. TRANSLATORS: Message-ID: ErrMsgTemplate.SSH_KEY_NOT_LOADED |
|
1158 |
+msgctxt "Error message" |
|
1159 |
+msgid "The requested SSH key is not loaded into the agent." |
|
1148 | 1160 |
msgstr "" |
1149 | 1161 |
|
1150 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.STEP_REPLACE_INVALID_VALUE |
|
1151 |
-#, python-brace-format |
|
1152 |
-msgctxt "Warning message" |
|
1153 |
-msgid "Replacing invalid value {old!s} for key {path!s} with {new!s}." |
|
1162 |
+#. TRANSLATORS: The user requested to edit the notes for a service, but aborted the request mid-editing. |
|
1163 |
+#. |
|
1164 |
+#. Message-ID: ErrMsgTemplate.USER_ABORTED_EDIT |
|
1165 |
+msgctxt "Error message" |
|
1166 |
+msgid "Not saving any new notes: the user aborted the request." |
|
1154 | 1167 |
msgstr "" |
1155 | 1168 |
|
1156 |
-#. TRANSLATORS: Message-ID: WarnMsgTemplate.V01_STYLE_CONFIG |
|
1157 |
-#, python-brace-format |
|
1158 |
-msgctxt "Warning message :: Deprecation" |
|
1159 |
-msgid "Using deprecated v0.1-style config file {old!r}, instead of v0.2-style {new!r}. Support for v0.1-style config filenames will be removed in v1.0." |
|
1169 |
+#. TRANSLATORS: The user was prompted for a master passphrase, but aborted the request. |
|
1170 |
+#. |
|
1171 |
+#. Message-ID: ErrMsgTemplate.USER_ABORTED_PASSPHRASE |
|
1172 |
+msgctxt "Error message" |
|
1173 |
+msgid "No passphrase was given; the user aborted the request." |
|
1160 | 1174 |
msgstr "" |
1161 | 1175 |
|
1162 |
-#. TRANSLATORS: This deprecation warning may be issued at any level, i.e. we may actually be talking about subcommands, or sub-subcommands, or sub-sub-subcommands, etc., which is what the "here" is supposed to indicate. |
|
1176 |
+#. TRANSLATORS: The user was prompted to select a master SSH key, but aborted the request. |
|
1163 | 1177 |
#. |
1164 |
-#. Message-ID: WarnMsgTemplate.V10_SUBCOMMAND_REQUIRED |
|
1165 |
-msgctxt "Warning message :: Deprecation" |
|
1166 |
-msgid "A subcommand will be required here in v1.0. See --help for available subcommands. Defaulting to subcommand \"vault\"." |
|
1178 |
+#. Message-ID: ErrMsgTemplate.USER_ABORTED_SSH_KEY_SELECTION |
|
1179 |
+msgctxt "Error message" |
|
1180 |
+msgid "No SSH key was selected; the user aborted the request." |
|
1167 | 1181 |
msgstr "" |
1168 | 1182 |