You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-08-24 20:19:10 +02:00
Compare commits
376 Commits
cli-v1.0.1
...
v1.0.111
Author | SHA1 | Date | |
---|---|---|---|
|
98a3b99d17 | ||
|
95a06c4531 | ||
|
6ea77b36ce | ||
|
0cd7ebf9d3 | ||
|
a816498fc6 | ||
|
549c1a6767 | ||
|
f87d1f11b0 | ||
|
fb913bc33c | ||
|
53d7a51cb0 | ||
|
12da48c756 | ||
|
a0a6bdb684 | ||
|
eb4aa2c026 | ||
|
a9e789f845 | ||
|
89b76918bd | ||
|
e98575643c | ||
|
7c9e7743f1 | ||
|
435aa4845b | ||
|
9841488ce4 | ||
|
9c907989a5 | ||
|
f684d8e59a | ||
|
a1ad6c9712 | ||
|
b6ca3090df | ||
|
ff2d793fbb | ||
|
fcfb7f1111 | ||
|
6125cde223 | ||
|
c83391e624 | ||
|
a3a818ea74 | ||
|
54a4965503 | ||
|
2233d88c01 | ||
|
9680ab74a3 | ||
|
ef711af5b5 | ||
|
8a619e4b8b | ||
|
bc09d2c640 | ||
|
f82dfde6f4 | ||
|
312c7f2d27 | ||
|
953cc327c6 | ||
|
14cff96713 | ||
|
34b9af2ce0 | ||
|
6a6ee280c3 | ||
|
861387707a | ||
|
830e665366 | ||
|
f14ae68ea0 | ||
|
c7084bf27e | ||
|
fc8ffcbe46 | ||
|
77f089654e | ||
|
e7a12bb0dd | ||
|
22fe3a4e44 | ||
|
afb8b92528 | ||
|
5178f99100 | ||
|
72af564382 | ||
|
0a2b83998c | ||
|
73e79213dc | ||
|
e31ffc9474 | ||
|
fdb8706a5f | ||
|
4c0262bd82 | ||
|
3b2dcb37a6 | ||
|
46a3b020a6 | ||
|
8373392e99 | ||
|
695c2623c2 | ||
|
979e7f2486 | ||
|
e7a9f630ec | ||
|
4e8372174b | ||
|
1b8912d7e9 | ||
|
8c3669588b | ||
|
1b784fe3b0 | ||
|
5ab1d8dfd6 | ||
|
cda8b95bfa | ||
|
9664842b1a | ||
|
09836e1d34 | ||
|
8974e20c7f | ||
|
761a49803e | ||
|
a40028f0c0 | ||
|
d4fca7e313 | ||
|
6748d4d825 | ||
|
0a5ad1d628 | ||
|
4080958e10 | ||
|
95c4a717e3 | ||
|
c5b9353105 | ||
|
17595f7ceb | ||
|
dcf78e8a06 | ||
|
de0c54c3c3 | ||
|
38970e9a52 | ||
|
563f43168b | ||
|
6e235605ed | ||
|
0749e0b675 | ||
|
756f3e627c | ||
|
4b39ed42b1 | ||
|
abe85ca4bd | ||
|
a559565ace | ||
|
d35e3163ca | ||
|
f22ad85681 | ||
|
727bdaeea4 | ||
|
42f7764eed | ||
|
1fbc1073ca | ||
|
66b683e5e7 | ||
|
7d1f61e47b | ||
|
643e5a6a2a | ||
|
a1e7e29279 | ||
|
abf6c3f3f1 | ||
|
32c81ad8c2 | ||
|
0f461c4caa | ||
|
57ed718993 | ||
|
ef1ae63233 | ||
|
81ac200cc0 | ||
|
3a2d62f6c7 | ||
|
7f80f67fd6 | ||
|
cebd8de77a | ||
|
417218fc34 | ||
|
29586437c2 | ||
|
f51d0ad914 | ||
|
35294b5f97 | ||
|
758562cff9 | ||
|
da0678c6fe | ||
|
afe4fd70cc | ||
|
4cef383fe7 | ||
|
b58c30889e | ||
|
1561c0e4d7 | ||
|
32b11c15a4 | ||
|
5e06efc1b9 | ||
|
43bd88703c | ||
|
cdd70230af | ||
|
eaf3eef2d3 | ||
|
81ec8eaf83 | ||
|
23f7e350c6 | ||
|
cea368cd3f | ||
|
50c8f2ae61 | ||
|
ed0ecababb | ||
|
72aa4c40a5 | ||
|
4f6784e2e5 | ||
|
01f015a54f | ||
|
806acad22a | ||
|
1d322d8a39 | ||
|
aef94e6950 | ||
|
456fcec334 | ||
|
3b6937c2f0 | ||
|
7cdd1d41c1 | ||
|
1fc535a740 | ||
|
033b37077a | ||
|
07f6a4a08b | ||
|
8c1b592a51 | ||
|
9460f7a17a | ||
|
106260ed69 | ||
|
123162e946 | ||
|
54e81966e5 | ||
|
9bf6ab60bb | ||
|
4f0ff3cdfc | ||
|
47cfaaa5ab | ||
|
1f49788f21 | ||
|
7e4cf9aeda | ||
|
4b6964b683 | ||
|
3caf398021 | ||
|
8840631266 | ||
|
c4411bb895 | ||
|
f63668350b | ||
|
3fc54d7ffd | ||
|
2c6c20f44f | ||
|
08ee939951 | ||
|
463b1441d3 | ||
|
6754d4ee89 | ||
|
d5d0732bf3 | ||
|
d27cbaa663 | ||
|
70adf10f2e | ||
|
e75417d26e | ||
|
2ded983828 | ||
|
0c708f766b | ||
|
a801f8d8ed | ||
|
26fc26c9fe | ||
|
df4c07d204 | ||
|
cf565d1563 | ||
|
6b425cf543 | ||
|
6188e7a0fa | ||
|
310afb0ad6 | ||
|
7d7e1e1637 | ||
|
424c8a2723 | ||
|
187fb1b85d | ||
|
595fd7a9aa | ||
|
0027cb9036 | ||
|
db6878b978 | ||
|
1c78722573 | ||
|
fea83e28c4 | ||
|
84adf64271 | ||
|
74e2b0d15d | ||
|
df302206dd | ||
|
6d8941c005 | ||
|
971b20062f | ||
|
936f334b61 | ||
|
7e3a290939 | ||
|
c6466a780e | ||
|
43774ad3fb | ||
|
b3ba5b7747 | ||
|
599f4ccef4 | ||
|
a67600d264 | ||
|
ebf4c89ef0 | ||
|
aa7da784fc | ||
|
617ed42d8c | ||
|
5848e7d90d | ||
|
01d032261c | ||
|
54d06646aa | ||
|
81da46035a | ||
|
74d0f75802 | ||
|
f25a352dcb | ||
|
21ef8da45f | ||
|
1f3a1c49df | ||
|
a8b58aaec3 | ||
|
44f9b35d93 | ||
|
711af9beed | ||
|
971339ca9a | ||
|
f5a72ffbaf | ||
|
cf4331c5af | ||
|
07b85388fc | ||
|
553b086ba2 | ||
|
ff89537899 | ||
|
f20792889a | ||
|
ee22a7ff73 | ||
|
4fc4353859 | ||
|
f4f9e25e6b | ||
|
e54f9934b5 | ||
|
f599ae065a | ||
|
5bd9bf6a4e | ||
|
cb9e8d4f76 | ||
|
f64596672e | ||
|
961150b2d3 | ||
|
0cd8e1cbc0 | ||
|
b503aff5e9 | ||
|
54bde47c67 | ||
|
d345f8dc13 | ||
|
979b0c0e78 | ||
|
13525f3327 | ||
|
5d9c2c0904 | ||
|
c748281d86 | ||
|
fa619eba7c | ||
|
17a75f7cf5 | ||
|
a74cfbfb25 | ||
|
af01fed950 | ||
|
218b446915 | ||
|
a68df18cd5 | ||
|
f79326b2d5 | ||
|
b08dcdfd90 | ||
|
ced14e578f | ||
|
0528c6e970 | ||
|
df9c1e0aeb | ||
|
b6619b41df | ||
|
ab9675544c | ||
|
0d9f703c75 | ||
|
f6ee5dd0e7 | ||
|
423d880b92 | ||
|
41017b9ab8 | ||
|
e3314c859f | ||
|
8f794fdbc6 | ||
|
80b0773618 | ||
|
ac848241b9 | ||
|
b4432e2efc | ||
|
52f60a2cf6 | ||
|
03c8438050 | ||
|
0e1c36ccf1 | ||
|
1b2b68c485 | ||
|
5c36f3e78a | ||
|
d4ec8ae823 | ||
|
449a70d840 | ||
|
8375030135 | ||
|
e9f938b0fb | ||
|
b0e57a5990 | ||
|
f47610e6fd | ||
|
c131cb9bb8 | ||
|
023f775bd2 | ||
|
1127eb6e09 | ||
|
0d7437c7d2 | ||
|
6dbc691973 | ||
|
fe53200a3a | ||
|
c7f61271a0 | ||
|
b826e2d97b | ||
|
d8ad42b04a | ||
|
b3ca30b8b6 | ||
|
bdd9da3d22 | ||
|
eb43ddc701 | ||
|
f9c65a148f | ||
|
bd0b9dff51 | ||
|
3822309657 | ||
|
ac2ec65c81 | ||
|
c0943f1776 | ||
|
5a2ab5fae7 | ||
|
281e36fde7 | ||
|
1af1c445c6 | ||
|
e6d2e028ad | ||
|
8d25b8075d | ||
|
58201fd6c3 | ||
|
2b624a9aed | ||
|
792fd7c50d | ||
|
90d37a15bd | ||
|
ef57ee803f | ||
|
e2bfb74895 | ||
|
89b486a3ee | ||
|
d6c6ef20d4 | ||
|
6cb6e9541f | ||
|
a8acecb703 | ||
|
0938297250 | ||
|
a2da2f681c | ||
|
32477e901d | ||
|
1841c4dc11 | ||
|
f81dce3321 | ||
|
e15f84716a | ||
|
d11ecd8fac | ||
|
012e70d668 | ||
|
264ee4f319 | ||
|
4640d6d6e3 | ||
|
9db9d98419 | ||
|
f79d7b9626 | ||
|
a8da469523 | ||
|
3c5eb99c59 | ||
|
8dc14516d6 | ||
|
84efc6a04e | ||
|
86e3038cfe | ||
|
6898b9ca4c | ||
|
9eb62920f7 | ||
|
7cf267254f | ||
|
5a0e3cbbf2 | ||
|
4b376ec5c2 | ||
|
92b71d3eb2 | ||
|
c32d7de7c4 | ||
|
c83a61d45d | ||
|
429f2d5aab | ||
|
ed70cf571c | ||
|
fd77671575 | ||
|
9d915a916e | ||
|
acb90935c7 | ||
|
6301ba0a12 | ||
|
44e1245416 | ||
|
6527d9db83 | ||
|
2bcaf62a2f | ||
|
2db3998f11 | ||
|
04724c58d1 | ||
|
7ed9c2770c | ||
|
48883bfa13 | ||
|
b6d9e695d1 | ||
|
43bab3c1bd | ||
|
dd67602b87 | ||
|
c96a416c2c | ||
|
c4ca9cde32 | ||
|
6c5d208893 | ||
|
795fd8b58c | ||
|
c226940792 | ||
|
bdd0a6106f | ||
|
d1ea7ad3ea | ||
|
a2b1181f7c | ||
|
8cce2f17d5 | ||
|
658b911513 | ||
|
3c95979d94 | ||
|
2e32211a28 | ||
|
ba2874173d | ||
|
ba9598682c | ||
|
30bfd82683 | ||
|
10c6774c28 | ||
|
c4ad9019aa | ||
|
7c99ab9947 | ||
|
feb7778fe4 | ||
|
b45185780f | ||
|
4e032c0c55 | ||
|
2e2b35dfeb | ||
|
526ef7e1d2 | ||
|
a37005446a | ||
|
e012b927dc | ||
|
359b8d5545 | ||
|
23c592b322 | ||
|
9aeddf86f4 | ||
|
0e1887988e | ||
|
394f2df664 | ||
|
2a04378a0d | ||
|
bac68f2c42 | ||
|
0f0ff86ffa | ||
|
8b38752cbf | ||
|
3c24589450 | ||
|
9f2666aef9 | ||
|
f136664c11 | ||
|
c8c9f80cc5 | ||
|
69ddcc6e30 | ||
|
16554b22c7 |
6
BUILD.md
6
BUILD.md
@@ -9,8 +9,6 @@
|
||||
echo 'export PATH="/usr/local/opt/gettext/bin:$PATH"' >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
|
||||
If you get a node-gyp related error you might need to manually install it: `npm install -g node-gyp`
|
||||
|
||||
## Linux and Windows (WSL) dependencies
|
||||
|
||||
- Install yarn - https://yarnpkg.com/lang/en/docs/install/
|
||||
@@ -37,6 +35,10 @@ yarn dist
|
||||
|
||||
If there's an error `while loading shared libraries: libgconf-2.so.4: cannot open shared object file: No such file or directory`, run `sudo apt-get install libgconf-2-4`
|
||||
|
||||
If you get a node-gyp related error you might need to manually install it: `npm install -g node-gyp`.
|
||||
|
||||
If you get the error `libtool: unrecognized option '-static'`, follow the instructions [in this post](https://stackoverflow.com/a/38552393/561309) to use the correct libtool version.
|
||||
|
||||
That will create the executable file in the `dist` directory.
|
||||
|
||||
From `/ElectronClient` you can also run `run.sh` to run the app for testing.
|
||||
|
@@ -17,3 +17,10 @@ Again, please check that it has not already been requested. If it has, simply **
|
||||
If you want to add a new feature, consider asking about it before implementing it or checking existing discussions to make sure it is within the scope of the project. Of course you are free to create the pull request directly but it is not guaranteed it is going to be accepted.
|
||||
|
||||
Building the apps is relatively easy - please [see the build instructions](https://github.com/laurent22/joplin/blob/master/BUILD.md) for more details.
|
||||
|
||||
# Coding style
|
||||
|
||||
There are only two rules, but not following them means the pull request will not be accepted (it can be accepted once the issues are fixed):
|
||||
|
||||
- **Please use tabs, NOT spaces.**
|
||||
- **Please do not add or remove optional characters, such as spaces or colons.** Please setup your editor so that it only changes what you are working on and is not making automated changes elsewhere. The reason for this is that small white space changes make diff hard to read and can cause needless conflicts.
|
1
CliClient/.gitignore
vendored
1
CliClient/.gitignore
vendored
@@ -13,6 +13,7 @@ tests/fuzzing.*
|
||||
tests/fuzzing -*
|
||||
tests/logs/*
|
||||
tests/cli-integration/
|
||||
tests/tmp/
|
||||
*.mo
|
||||
*.*~
|
||||
tests/sync
|
||||
|
276
CliClient/app/command-apidoc.js
Normal file
276
CliClient/app/command-apidoc.js
Normal file
@@ -0,0 +1,276 @@
|
||||
const { BaseCommand } = require('./base-command.js');
|
||||
const { _ } = require('lib/locale.js');
|
||||
const { cliUtils } = require('./cli-utils.js');
|
||||
const EncryptionService = require('lib/services/EncryptionService');
|
||||
const DecryptionWorker = require('lib/services/DecryptionWorker');
|
||||
const MasterKey = require('lib/models/MasterKey');
|
||||
const BaseItem = require('lib/models/BaseItem');
|
||||
const BaseModel = require('lib/BaseModel');
|
||||
const Setting = require('lib/models/Setting.js');
|
||||
const { toTitleCase } = require('lib/string-utils.js');
|
||||
const { reg } = require('lib/registry.js');
|
||||
const markdownUtils = require('lib/markdownUtils');
|
||||
const { Database } = require('lib/database.js');
|
||||
|
||||
class Command extends BaseCommand {
|
||||
|
||||
usage() {
|
||||
return 'apidoc';
|
||||
}
|
||||
|
||||
description() {
|
||||
return 'Build the API doc';
|
||||
}
|
||||
|
||||
createPropertiesTable(tableFields) {
|
||||
const headers = [
|
||||
{ name: 'name', label: 'Name' },
|
||||
{ name: 'type', label: 'Type', filter: (value) => {
|
||||
return Database.enumName('fieldType', value);
|
||||
}},
|
||||
{ name: 'description', label: 'Description' },
|
||||
];
|
||||
|
||||
return markdownUtils.createMarkdownTable(headers, tableFields);
|
||||
}
|
||||
|
||||
async action(args) {
|
||||
const models = [
|
||||
{
|
||||
type: BaseModel.TYPE_NOTE,
|
||||
},
|
||||
{
|
||||
type: BaseModel.TYPE_FOLDER,
|
||||
},
|
||||
{
|
||||
type: BaseModel.TYPE_RESOURCE,
|
||||
},
|
||||
{
|
||||
type: BaseModel.TYPE_TAG,
|
||||
},
|
||||
];
|
||||
|
||||
const lines = [];
|
||||
|
||||
lines.push('# Joplin API');
|
||||
lines.push('');
|
||||
|
||||
lines.push('When the Web Clipper service is enabled, Joplin exposes a [REST API](https://en.wikipedia.org/wiki/Representational_state_transfer) which allows third-party applications to access Joplin\'s data and to create, modify or delete notes, notebooks, resources or tags.');
|
||||
lines.push('');
|
||||
lines.push('In order to use it, you\'ll first need to find on which port the service is running. To do so, open the Web Clipper Options in Joplin and if the service is running it should tell you on which port. Normally it runs on port **41184**. If you want to find it programmatically, you may follow this kind of algorithm:');
|
||||
lines.push('');
|
||||
lines.push('```javascript');
|
||||
lines.push('let port = null;');
|
||||
lines.push('for (let portToTest = 41184; portToTest <= 41194; portToTest++) {');
|
||||
lines.push(' const result = pingPort(portToTest); // Call GET /ping');
|
||||
lines.push(' if (result == \'JoplinClipperServer\') {');
|
||||
lines.push(' port = portToTest; // Found the port');
|
||||
lines.push(' break;');
|
||||
lines.push(' }');
|
||||
lines.push('}');
|
||||
lines.push('```');
|
||||
|
||||
lines.push('# Authorisation')
|
||||
lines.push('');
|
||||
lines.push('To prevent unauthorised applications from accessing the API, the calls must be authentified. To do so, you must provide a token as a query parameter for each API call. You can get this token from the Joplin desktop application, on the Web Clipper Options screen.');
|
||||
lines.push('');
|
||||
lines.push('This would be an example of valid cURL call using a token:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl http://localhost:41184/notes?token=ABCD123ABCD123ABCD123ABCD123ABCD123');
|
||||
lines.push('');
|
||||
lines.push('In the documentation below, the token will not be specified every time however you will need to include it.');
|
||||
|
||||
lines.push('# Using the API');
|
||||
lines.push('');
|
||||
lines.push('All the calls, unless noted otherwise, receives and send **JSON data**. For example to create a new note:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl --data \'{ "title": "My note", "body": "Some note in **Markdown**"}\' http://localhost:41184/notes');
|
||||
lines.push('');
|
||||
lines.push('In the documentation below, the calls may include special parameters such as :id or :note_id. You would replace this with the item ID or note ID.');
|
||||
lines.push('');
|
||||
lines.push('For example, for the endpoint `DELETE /tags/:id/notes/:note_id`, to remove the tag with ID "ABCD1234" from the note with ID "EFGH789", you would run for example:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl -X DELETE http://localhost:41184/tags/ABCD1234/notes/EFGH789');
|
||||
lines.push('');
|
||||
lines.push('The four verbs supported by the API are the following ones:');
|
||||
lines.push('');
|
||||
lines.push('* **GET**: To retrieve items (notes, notebooks, etc.).');
|
||||
lines.push('* **POST**: To create new items. In general most item properties are optional. If you omit any, a default value will be used.');
|
||||
lines.push('* **PUT**: To update an item. Note in a REST API, traditionally PUT is used to completely replace an item, however in this API it will only replace the properties that are provided. For example if you PUT {"title": "my new title"}, only the "title" property will be changed. The other properties will be left untouched (they won\'t be cleared nor changed).');
|
||||
lines.push('* **DELETE**: To delete items.');
|
||||
lines.push('');
|
||||
|
||||
lines.push('# Filtering data');
|
||||
lines.push('');
|
||||
lines.push('You can change the fields that will be returned by the API using the `fields=` query parameter, which takes a list of comma separated fields. For example, to get the longitude and latitude of a note, use this:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl http://localhost:41184/notes/ABCD123?fields=longitude,latitude');
|
||||
lines.push('');
|
||||
lines.push('To get the IDs only of all the tags:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl http://localhost:41184/tags?fields=id');
|
||||
lines.push('');
|
||||
|
||||
lines.push('# About the property types');
|
||||
lines.push('');
|
||||
lines.push('* Text is UTF-8.');
|
||||
lines.push('* All date/time are Unix timestamps in milliseconds.');
|
||||
lines.push('* Booleans are integer values 0 or 1.');
|
||||
lines.push('');
|
||||
|
||||
lines.push('# Testing if the service is available');
|
||||
lines.push('');
|
||||
lines.push('Call **GET /ping** to check if the service is available. It should return "JoplinClipperServer" if it works.');
|
||||
lines.push('');
|
||||
|
||||
for (let i = 0; i < models.length; i++) {
|
||||
const model = models[i];
|
||||
const ModelClass = BaseItem.getClassByItemType(model.type);
|
||||
const tableName = ModelClass.tableName();
|
||||
let tableFields = reg.db().tableFields(tableName, { includeDescription: true });
|
||||
const singular = tableName.substr(0, tableName.length - 1);
|
||||
|
||||
if (model.type === BaseModel.TYPE_NOTE) {
|
||||
tableFields = tableFields.slice();
|
||||
tableFields.push({
|
||||
name: 'body_html',
|
||||
type: Database.enumId('fieldType', 'text'),
|
||||
description: 'Note body, in HTML format',
|
||||
});
|
||||
tableFields.push({
|
||||
name: 'base_url',
|
||||
type: Database.enumId('fieldType', 'text'),
|
||||
description: 'If `body_html` is provided and contains relative URLs, provide the `base_url` parameter too so that all the URLs can be converted to absolute ones. The base URL is basically where the HTML was fetched from, minus the query (everything after the \'?\'). For example if the original page was `https://stackoverflow.com/search?q=%5Bjava%5D+test`, the base URL is `https://stackoverflow.com/search`.',
|
||||
});
|
||||
tableFields.push({
|
||||
name: 'image_data_url',
|
||||
type: Database.enumId('fieldType', 'text'),
|
||||
description: 'An image to attach to the note, in [Data URL](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) format.',
|
||||
});
|
||||
tableFields.push({
|
||||
name: 'crop_rect',
|
||||
type: Database.enumId('fieldType', 'text'),
|
||||
description: 'If an image is provided, you can also specify an optional rectangle that will be used to crop the image. In format `{ x: x, y: y, width: width, height: height }`',
|
||||
});
|
||||
}
|
||||
|
||||
lines.push('# ' + toTitleCase(tableName));
|
||||
lines.push('');
|
||||
|
||||
if (model.type === BaseModel.TYPE_FOLDER) {
|
||||
lines.push('This is actually a notebook. Internally notebooks are called "folders".');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
lines.push('## Properties');
|
||||
lines.push('');
|
||||
lines.push(this.createPropertiesTable(tableFields));
|
||||
lines.push('');
|
||||
|
||||
lines.push('## GET /' + tableName);
|
||||
lines.push('');
|
||||
lines.push('Gets all ' + tableName);
|
||||
lines.push('');
|
||||
|
||||
if (model.type === BaseModel.TYPE_FOLDER) {
|
||||
lines.push('The folders are returned as a tree. The sub-notebooks of a notebook, if any, are under the `children` key.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
lines.push('## GET /' + tableName + '/:id');
|
||||
lines.push('');
|
||||
lines.push('Gets ' + singular + ' with ID :id');
|
||||
lines.push('');
|
||||
|
||||
if (model.type === BaseModel.TYPE_TAG) {
|
||||
lines.push('## GET /tags/:id/notes');
|
||||
lines.push('');
|
||||
lines.push('Gets all the notes with this tag.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
if (model.type === BaseModel.TYPE_NOTE) {
|
||||
lines.push('## GET /notes/:id/tags');
|
||||
lines.push('');
|
||||
lines.push('Gets all the tags attached to this note.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
if (model.type === BaseModel.TYPE_FOLDER) {
|
||||
lines.push('## GET /folders/:id/notes');
|
||||
lines.push('');
|
||||
lines.push('Gets all the notes inside this folder.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
if (model.type === BaseModel.TYPE_RESOURCE) {
|
||||
lines.push('## GET /resources/:id/file');
|
||||
lines.push('');
|
||||
lines.push('Gets the actual file associated with this resource.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
lines.push('## POST /' + tableName);
|
||||
lines.push('');
|
||||
lines.push('Creates a new ' + singular);
|
||||
lines.push('');
|
||||
|
||||
if (model.type === BaseModel.TYPE_RESOURCE) {
|
||||
lines.push('Creating a new resource is special because you also need to upload the file. Unlike other API calls, this one must have the "multipart/form-data" Content-Type. The file data must be passed to the "data" form field, and the other properties to the "props" form field. An example of a valid call with cURL would be:');
|
||||
lines.push('');
|
||||
lines.push('\tcurl -F \'data=@/path/to/file.jpg\' -F \'props={"title":"my resource title"}\' http://localhost:41184/resources');
|
||||
lines.push('');
|
||||
lines.push('The "data" field is required, while the "props" one is not. If not specified, default values will be used.');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
if (model.type === BaseModel.TYPE_TAG) {
|
||||
lines.push('## POST /tags/:id/notes');
|
||||
lines.push('');
|
||||
lines.push('Post a note to this endpoint to add the tag to the note. The note data must at least contain an ID property (all other properties will be ignored).');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
if (model.type === BaseModel.TYPE_NOTE) {
|
||||
lines.push('You can either specify the note body as Markdown by setting the `body` parameter, or in HTML by setting the `body_html`.');
|
||||
lines.push('');
|
||||
lines.push('Examples:');
|
||||
lines.push('');
|
||||
lines.push('* Create a note from some Markdown text');
|
||||
lines.push('');
|
||||
lines.push(' curl --data \'{ "title": "My note", "body": "Some note in **Markdown**"}\' http://127.0.0.1:41184/notes');
|
||||
lines.push('');
|
||||
lines.push('* Create a note from some HTML');
|
||||
lines.push('');
|
||||
lines.push(' curl --data \'{ "title": "My note", "body_html": "Some note in <b>HTML</b>"}\' http://127.0.0.1:41184/notes');
|
||||
lines.push('');
|
||||
lines.push('* Create a note and attach an image to it:');
|
||||
lines.push('');
|
||||
lines.push(' curl --data \'{ "title": "Image test", "body": "Here is Joplin icon:", "image_data_url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUeNoAyAA3/wFwtO3K6gUB/vz2+Prw9fj/+/r+/wBZKAAExOgF4/MC9ff+MRH6Ui4E+/0Bqc/zutj6AgT+/Pz7+vv7++nu82c4DlMqCvLs8goA/gL8/fz09fb59vXa6vzZ6vjT5fbn6voD/fwC8vX4UiT9Zi//APHyAP8ACgUBAPv5APz7BPj2+DIaC2o3E+3o6ywaC5fT6gD6/QD9/QEVf9kD+/dcLQgJA/7v8vqfwOf18wA1IAIEVycAyt//v9XvAPv7APz8LhoIAPz9Ri4OAgwARgx4W/6fVeEAAAAASUVORK5CYII="}\' http://127.0.0.1:41184/notes');
|
||||
lines.push('');
|
||||
}
|
||||
|
||||
lines.push('## PUT /' + tableName + '/:id');
|
||||
lines.push('');
|
||||
lines.push('Sets the properties of the ' + singular + ' with ID :id');
|
||||
lines.push('');
|
||||
|
||||
lines.push('## DELETE /' + tableName + '/:id');
|
||||
lines.push('');
|
||||
lines.push('Deletes the ' + singular + ' with ID :id');
|
||||
lines.push('');
|
||||
|
||||
if (model.type === BaseModel.TYPE_TAG) {
|
||||
lines.push('## DELETE /tags/:id/notes/:note_id');
|
||||
lines.push('');
|
||||
lines.push('Remove the tag from the note.');
|
||||
lines.push('');
|
||||
}
|
||||
}
|
||||
|
||||
this.stdout(lines.join('\n'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = Command;
|
@@ -47,12 +47,48 @@ class Command extends BaseCommand {
|
||||
}
|
||||
|
||||
if (args.command === 'decrypt') {
|
||||
this.stdout(_('Starting decryption... Please wait as it may take several minutes depending on how much there is to decrypt.'));
|
||||
|
||||
while (true) {
|
||||
try {
|
||||
await DecryptionWorker.instance().start();
|
||||
break;
|
||||
if (args.path) {
|
||||
const plainText = await EncryptionService.instance().decryptString(args.path);
|
||||
this.stdout(plainText);
|
||||
return;
|
||||
} else {
|
||||
if (process.stdin.isTTY) {
|
||||
this.stdout(_('Starting decryption... Please wait as it may take several minutes depending on how much there is to decrypt.'));
|
||||
await DecryptionWorker.instance().start();
|
||||
this.stdout(_('Completed decryption.'));
|
||||
return;
|
||||
} else {
|
||||
// var repl = require("repl");
|
||||
// var r = repl.start("node> ");
|
||||
|
||||
const text = await new Promise((accept, reject) => {
|
||||
var buffer = '';
|
||||
process.stdin.setEncoding('utf8');
|
||||
process.stdin.on('data', function(chunk) {
|
||||
buffer += chunk;
|
||||
// process.stdout.write(chunk);
|
||||
});
|
||||
process.stdin.on('end', function() {
|
||||
accept(buffer.trim());
|
||||
});
|
||||
});
|
||||
|
||||
if (text.length > 0) {
|
||||
var cipherText = text;
|
||||
try {
|
||||
var item = await BaseItem.unserialize(text);
|
||||
cipherText = item.encryption_cipher_text;
|
||||
} catch (error) {
|
||||
// we already got the pure cipher text
|
||||
}
|
||||
const plainText = await EncryptionService.instance().decryptString(cipherText);
|
||||
this.stdout(plainText);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
if (error.code === 'masterKeyNotLoaded') {
|
||||
const masterKeyId = error.masterKeyId;
|
||||
@@ -70,8 +106,6 @@ class Command extends BaseCommand {
|
||||
}
|
||||
}
|
||||
|
||||
this.stdout(_('Completed decryption.'));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -181,4 +215,4 @@ class Command extends BaseCommand {
|
||||
|
||||
}
|
||||
|
||||
module.exports = Command;
|
||||
module.exports = Command;
|
||||
|
@@ -22,7 +22,7 @@ class Command extends BaseCommand {
|
||||
enabled() {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
options() {
|
||||
return [
|
||||
['-n, --limit <num>', _('Displays only the first top <num> notes.')],
|
||||
@@ -93,7 +93,7 @@ class Command extends BaseCommand {
|
||||
row.push(await Folder.noteCount(item.id));
|
||||
}
|
||||
|
||||
row.push(time.unixMsToLocalDateTime(item.user_updated_time));
|
||||
row.push(time.formatMsToLocal(item.user_updated_time));
|
||||
}
|
||||
|
||||
let title = item.title;
|
||||
@@ -123,4 +123,4 @@ class Command extends BaseCommand {
|
||||
|
||||
}
|
||||
|
||||
module.exports = Command;
|
||||
module.exports = Command;
|
||||
|
@@ -3,6 +3,7 @@ const { app } = require('./app.js');
|
||||
const { _ } = require('lib/locale.js');
|
||||
const Tag = require('lib/models/Tag.js');
|
||||
const BaseModel = require('lib/BaseModel.js');
|
||||
const { time } = require('lib/time-utils.js');
|
||||
|
||||
class Command extends BaseCommand {
|
||||
|
||||
@@ -11,11 +12,19 @@ class Command extends BaseCommand {
|
||||
}
|
||||
|
||||
description() {
|
||||
return _('<tag-command> can be "add", "remove" or "list" to assign or remove [tag] from [note], or to list the notes associated with [tag]. The command `tag list` can be used to list all the tags.');
|
||||
return _('<tag-command> can be "add", "remove" or "list" to assign or remove [tag] from [note], or to list the notes associated with [tag]. The command `tag list` can be used to list all the tags (use -l for long option).');
|
||||
}
|
||||
|
||||
|
||||
options() {
|
||||
return [
|
||||
['-l, --long', _('Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, TODO_CHECKED (for to-dos), TITLE')],
|
||||
];
|
||||
}
|
||||
|
||||
async action(args) {
|
||||
let tag = null;
|
||||
let options = args.options;
|
||||
|
||||
if (args.tag) tag = await app().loadItem(BaseModel.TYPE_TAG, args.tag);
|
||||
let notes = [];
|
||||
if (args.note) {
|
||||
@@ -41,7 +50,28 @@ class Command extends BaseCommand {
|
||||
} else if (command == 'list') {
|
||||
if (tag) {
|
||||
let notes = await Tag.notes(tag.id);
|
||||
notes.map((note) => { this.stdout(note.title); });
|
||||
notes.map((note) => {
|
||||
let line = '';
|
||||
if (options.long) {
|
||||
line += BaseModel.shortId(note.id);
|
||||
line += ' ';
|
||||
line += time.formatMsToLocal(note.user_updated_time);
|
||||
line += ' ';
|
||||
}
|
||||
if (note.is_todo) {
|
||||
line += '[';
|
||||
if (note.todo_completed) {
|
||||
line += 'X';
|
||||
} else {
|
||||
line += ' ';
|
||||
}
|
||||
line += '] ';
|
||||
} else {
|
||||
line += ' ';
|
||||
}
|
||||
line += note.title;
|
||||
this.stdout(line);
|
||||
});
|
||||
} else {
|
||||
let tags = await Tag.all();
|
||||
tags.map((tag) => { this.stdout(tag.title); });
|
||||
|
@@ -32,8 +32,6 @@ class FolderListWidget extends ListWidget {
|
||||
output.push(_('Search:'));
|
||||
output.push(item.title);
|
||||
}
|
||||
|
||||
// if (item && item.id) output.push(item.id.substr(0, 5));
|
||||
|
||||
return output.join(' ');
|
||||
};
|
||||
@@ -85,7 +83,6 @@ class FolderListWidget extends ListWidget {
|
||||
}
|
||||
|
||||
set notesParentType(v) {
|
||||
//if (this.notesParentType_ === v) return;
|
||||
this.notesParentType_ = v;
|
||||
this.updateIndexFromSelectedItemId()
|
||||
this.invalidate();
|
||||
@@ -123,6 +120,14 @@ class FolderListWidget extends ListWidget {
|
||||
this.updateIndexFromSelectedItemId()
|
||||
this.invalidate();
|
||||
}
|
||||
|
||||
folderHasChildren_(folders, folderId) {
|
||||
for (let i = 0; i < folders.length; i++) {
|
||||
let folder = folders[i];
|
||||
if (folder.parent_id === folderId) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
render() {
|
||||
if (this.updateItems_) {
|
||||
@@ -130,7 +135,18 @@ class FolderListWidget extends ListWidget {
|
||||
const wasSelectedItemId = this.selectedJoplinItemId;
|
||||
const previousParentType = this.notesParentType;
|
||||
|
||||
let newItems = this.folders.slice();
|
||||
let newItems = [];
|
||||
const orderFolders = (parentId) => {
|
||||
for (let i = 0; i < this.folders.length; i++) {
|
||||
const f = this.folders[i];
|
||||
if (f.parent_id === parentId) {
|
||||
newItems.push(f);
|
||||
if (this.folderHasChildren_(this.folders, f.id)) orderFolders(f.id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
orderFolders('');
|
||||
|
||||
if (this.tags.length) {
|
||||
if (newItems.length) newItems.push('-');
|
||||
|
@@ -66,26 +66,6 @@ process.stdout.on('error', function( err ) {
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// async function main() {
|
||||
// const InteropService = require('lib/services/InteropService');
|
||||
// const service = new InteropService();
|
||||
// console.info(service.moduleByFormat('importer', 'enex'));
|
||||
// //await service.modules();
|
||||
// }
|
||||
|
||||
// main().catch((error) => { console.error(error); });
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
application.start(process.argv).catch((error) => {
|
||||
if (error.code == 'flagError') {
|
||||
console.error(error.message);
|
||||
|
1695
CliClient/locales/ca.po
Normal file
1695
CliClient/locales/ca.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -451,10 +451,11 @@ msgstr "Zahajuji synchronizaci..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Zastavuji, chvíli strpení."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> může být \"add\", \"remove\" nebo \"list\" - přidat (add) či "
|
||||
"odebrat (remove) [tag] k [poznámce], nebo vypsat (list) seznam poznámek "
|
||||
@@ -614,6 +615,18 @@ msgstr "Vyjmout"
|
||||
msgid "Paste"
|
||||
msgstr "Vložit"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Hledat ve všech poznámkách"
|
||||
|
||||
@@ -632,6 +645,9 @@ msgstr "Nástroje"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Stav synchronizace"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Nastavení šifrování"
|
||||
|
||||
@@ -682,6 +698,67 @@ msgstr "Ano"
|
||||
msgid "No"
|
||||
msgstr "Ne"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Stav: %s."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Ukázat pokročilé volby"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Zkontrolujte nastavení synchronizace"
|
||||
|
||||
@@ -689,12 +766,15 @@ msgstr "Zkontrolujte nastavení synchronizace"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Poznámky a nastavení uloženo v: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Uložit"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Uložit"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -801,6 +881,10 @@ msgstr "Tagy oddělujte čárkami."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Přejmenovat zápisník:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Přejmenovat"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Nastavit alarm:"
|
||||
|
||||
@@ -826,6 +910,13 @@ msgstr "Nastavit heslo"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Přidat či odebrat tagy"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Kopírovat"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Přepnout mezi poznámkou a to-do"
|
||||
|
||||
@@ -846,16 +937,50 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Nemáte žádný zápisník. Vytvořte jeden kliknutím na \"Nový zápisník\"."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Otevřít..."
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Nebylo možné uložit zápisník: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Uložit jako..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Nepodporovaný link či zpráva: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr "Tato poznámka je prázdný. Klikněte na \"%s\" pro otevření editoru."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Přiložit soubor"
|
||||
|
||||
@@ -865,11 +990,40 @@ msgstr "Tagy"
|
||||
msgid "Set alarm"
|
||||
msgstr "Nastavit alarm"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr "Tato poznámka je prázdný. Klikněte na \"%s\" pro otevření editoru."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Zastavuji..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "to-do"
|
||||
@@ -902,6 +1056,10 @@ msgstr "Stav synchronizace"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Nastavení šifrování"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Obecná nastavení"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Odebrat tento tag ze všech poznámek?"
|
||||
|
||||
@@ -1046,14 +1204,22 @@ msgstr "Konflikty"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Poznámku nelze přesunout do zápisníku \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Zápisník s tímto názvem již existuje: \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Zápisník se nemůže jmenovat \"%s\", tento název je rezervován."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Bez názvu"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Upraveno: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Vytvořeno: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Bez názvu"
|
||||
|
||||
@@ -1068,16 +1234,6 @@ msgstr "Poznámku \"%s\" nelze zkopírovat do zápisníku"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Poznámku nelze přesunout do zápisníku \"%s\""
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Textový editor"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor ve kterém budou otvírány poznámky. Pokud není specifikováno, aplikace "
|
||||
"se pokusí o autodetekci defaultního editoru."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Jazyk"
|
||||
|
||||
@@ -1130,15 +1286,19 @@ msgstr "Zobrazovat ikonu v panelu"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Globální zoom"
|
||||
|
||||
msgid "Editor font family"
|
||||
msgstr "Rodina písma v editoru"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Jméno fontu není kontrolováno. Pokud je neplatné či chybí, bude použit "
|
||||
"defaultní monospace font."
|
||||
@@ -1161,6 +1321,18 @@ msgstr "%d hodina"
|
||||
msgid "%d hours"
|
||||
msgstr "%d hodin"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Textový editor"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor ve kterém budou otvírány poznámky. Pokud není specifikováno, aplikace "
|
||||
"se pokusí o autodetekci defaultního editoru."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Ukázat pokročilé volby"
|
||||
|
||||
@@ -1187,6 +1359,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Nextcloud uživatelské jméno"
|
||||
|
||||
@@ -1202,10 +1381,27 @@ msgstr "WebDAV uživatelské jméno"
|
||||
msgid "WebDAV password"
|
||||
msgstr "WebDAV heslo"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Neplatná hodnota: \"%s\". Přípustné hodnoty jsou: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Soubor Joplin Export"
|
||||
|
||||
@@ -1320,6 +1516,10 @@ msgstr "Přesunout poznámky %d do zápisníku \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Stiskněte pro zadání hesla k dešifrování."
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Nastavit alarm"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Vybrat datum"
|
||||
|
||||
@@ -1329,12 +1529,32 @@ msgstr "Potvrdit"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Zrušit synchronizaci"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Získané položky: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Nové tagy:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Zadejte nové tagy, nebo vyberte existující ze seznamu"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Web Joplinu"
|
||||
|
||||
@@ -1399,6 +1619,9 @@ msgstr "Přiložit obrázek"
|
||||
msgid "Attach any file"
|
||||
msgstr "Přiložit soubor"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Konvertovat na poznámku"
|
||||
|
||||
@@ -1436,5 +1659,8 @@ msgstr "Nemáte žádný zápisník. Vytvořte jeden kliknutím na tlačítko (+
|
||||
msgid "Welcome"
|
||||
msgstr "Vítejte"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Zápisník s tímto názvem již existuje: \"%s\""
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Hledané výrazy"
|
||||
|
@@ -455,10 +455,11 @@ msgstr "Starter synkronisering."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Annullerer... Vent venligst."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> (mærke-kommando) kan enten være \"add\" (tilføj), \"remove"
|
||||
"\" (slet) eller \"list\" (liste) for at tilføje eller fjerne mærke [tag] fra "
|
||||
@@ -619,6 +620,18 @@ msgstr "Klip"
|
||||
msgid "Paste"
|
||||
msgstr "Indsæt"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Søg i alle noter"
|
||||
|
||||
@@ -637,6 +650,9 @@ msgstr "Værktøjer"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Synkroniserings status"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Krypterings muligheder"
|
||||
|
||||
@@ -687,6 +703,67 @@ msgstr "Ja"
|
||||
msgid "No"
|
||||
msgstr "Nej"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Tilstand: %s."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Vis avancerede indstillinger"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Check synkroniserings Indstillinger"
|
||||
|
||||
@@ -694,12 +771,15 @@ msgstr "Check synkroniserings Indstillinger"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Noter og indstillinger er gemt i: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gem"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr "Gem"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gem"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -810,6 +890,10 @@ msgstr "Adskil hver mærke med komma."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Omdøb notesbog:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Omdøb"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Indstil alarm:"
|
||||
|
||||
@@ -835,6 +919,13 @@ msgstr "Indstil kodeord"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Tilføj eller slet mærker"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Kopier"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Skift mellem note- og opgave type"
|
||||
|
||||
@@ -855,16 +946,50 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Der er ingen notesbog. Opret en ved at klikke på \"Ny Notesbog\"."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Åben..."
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Notesbogen kan ikke gemmes: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Gem som..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Ugyldigt- eller ulovligt link eller besked: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr "Denne note er tom. Klik på \"%s\" for at starte editor og rette noten."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Vedhæft fil"
|
||||
|
||||
@@ -874,11 +999,40 @@ msgstr "Mærker"
|
||||
msgid "Set alarm"
|
||||
msgstr "Indstil alarm"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr "Denne note er tom. Klik på \"%s\" for at starte editor og rette noten."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Annullerer..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "opgave"
|
||||
@@ -911,6 +1065,10 @@ msgstr "Synkroniserings status"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Krypterings indstillinger"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Generelle indstillinger"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Slet denne markering fra alle noter?"
|
||||
|
||||
@@ -1055,14 +1213,22 @@ msgstr "Konflikter"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Kan ikke flytte note til \"%s\" notesbog"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "En notesbog bruger allerede dette navn: \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Notesbøger kan ikke få navnet \"%s\", da det er en beskyttet titel."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Samlet"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Opdateret %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Oprettet: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Samlet"
|
||||
|
||||
@@ -1077,16 +1243,6 @@ msgstr "Kan ikke kopiere note til \"%s\" notesbog"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Kan ikke flytte note til \"%s\" notesbog"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Tekst editor"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor der bruges til at åbne note. Hvis ingen valgt/udfyldt, vil auto-"
|
||||
"funktion søge efter standard editor."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Sprog"
|
||||
|
||||
@@ -1139,15 +1295,19 @@ msgstr "Vis ikon på bundbjælke"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Global zoom procent"
|
||||
|
||||
msgid "Editor font family"
|
||||
msgstr "Rediger skrifttype"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Skrifttypenavn checkes ikke. Hvis tom eller ukorrekt, standard vil returnere "
|
||||
"til monospace font."
|
||||
@@ -1170,6 +1330,18 @@ msgstr "%d time"
|
||||
msgid "%d hours"
|
||||
msgstr "%d timer"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Tekst editor"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor der bruges til at åbne note. Hvis ingen valgt/udfyldt, vil auto-"
|
||||
"funktion søge efter standard editor."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Vis avancerede indstillinger"
|
||||
|
||||
@@ -1196,6 +1368,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Nextcloud brugernavn"
|
||||
|
||||
@@ -1211,10 +1390,27 @@ msgstr "WebDAV brugernavn"
|
||||
msgid "WebDAV password"
|
||||
msgstr "WebDAV kodeord"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Ulovlig værdi: \"%s\". Mulige valg er: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Joplin eksport fil"
|
||||
|
||||
@@ -1329,6 +1525,10 @@ msgstr "Flyt %d noter til notesbogen \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Klik for at gemme dekrypterings kodeord."
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Indstil alarm"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Vælg dato"
|
||||
|
||||
@@ -1338,12 +1538,32 @@ msgstr "Bekræft"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Afbryd synkronisering"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Hentede emner: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Nye tags:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Indtast nye tags eller vælg fra listen"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Joplin hjemmeside"
|
||||
|
||||
@@ -1408,6 +1628,9 @@ msgstr "Vedhæft foto"
|
||||
msgid "Attach any file"
|
||||
msgstr "Vedhæft fil"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Konverter til note"
|
||||
|
||||
@@ -1445,6 +1668,9 @@ msgstr "Du har ingen notesbøger. Opret en ved at klikke på (+) knappen."
|
||||
msgid "Welcome"
|
||||
msgstr "Velkommen"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "En notesbog bruger allerede dette navn: \"%s\""
|
||||
|
||||
#~ msgid ""
|
||||
#~ "For more information about End-To-End Encryption (E2EE) and advices on "
|
||||
#~ "how to enable it please check the documentation"
|
||||
|
@@ -7,18 +7,18 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Joplin-CLI 1.0.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"Last-Translator: Philipp Zumstein <zuphilip@gmail.com>\n"
|
||||
"Last-Translator: Michael Sonntag <ms@editorei.de>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: de_DE\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.7\n"
|
||||
"X-Generator: Poedit 2.1.1\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgid "To delete a tag, untag the associated notes."
|
||||
msgstr ""
|
||||
"Um eine Markierung zu löschen, entferne diese bei allen damit verbundenen "
|
||||
"Um ein Schlagwort zu löschen, entferne es bei allen damit verbundenen "
|
||||
"Notizen."
|
||||
|
||||
msgid "Please select the note or notebook to be deleted first."
|
||||
@@ -53,7 +53,7 @@ msgid "y"
|
||||
msgstr "j"
|
||||
|
||||
msgid "Cancelling background synchronisation... Please wait."
|
||||
msgstr "Breche Hintergrund-Synchronisation ab... Bitte warten."
|
||||
msgstr "Breche Hintergrundsynchronisation ab… Bitte warten."
|
||||
|
||||
#, javascript-format
|
||||
msgid "No such command: %s"
|
||||
@@ -271,8 +271,8 @@ msgstr "Um den Kommandozeilen Modus zu beenden, drücke ESCAPE"
|
||||
msgid ""
|
||||
"For the list of keyboard shortcuts and config options, type `help keymap`"
|
||||
msgstr ""
|
||||
"Um die komplette Liste aller verfügbaren Tastenkürzeln anzuzeigen, tippe "
|
||||
"`help keymap` ein"
|
||||
"Um die komplette Liste aller verfügbaren Tastenkürzeln und "
|
||||
"Konfigurationseinstellungen anzuzeigen, tippe `help keymap` ein"
|
||||
|
||||
msgid "Imports data into Joplin."
|
||||
msgstr "Importiert Daten in Joplin."
|
||||
@@ -379,12 +379,12 @@ msgstr "Löscht das ausgewählte Notizbuch."
|
||||
msgid "Deletes the notebook without asking for confirmation."
|
||||
msgstr "Löscht das Notizbuch, ohne nach einer Bestätigung zu fragen."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Delete notebook? All notes and sub-notebooks within this notebook will also "
|
||||
"be deleted."
|
||||
msgstr ""
|
||||
"Notizbuch wirklich löschen? Alle Notizen darin werden ebenfalls gelöscht."
|
||||
"Notizbuch wirklich löschen? Alle Notizen und Unternotizen darin werden "
|
||||
"ebenfalls gelöscht."
|
||||
|
||||
msgid "Deletes the notes matching <note-pattern>."
|
||||
msgstr "Löscht die Notizen, die mit <note-pattern> übereinstimmen."
|
||||
@@ -475,15 +475,16 @@ msgstr "Starte Synchronisation..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Abbrechen… Bitte warten."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> kann \"add\", \"remove\" or \"list\" sein, um eine "
|
||||
"[Markierung] zu [Notiz] zuzuweisen oder zu entfernen, oder um mit "
|
||||
"[Markierung] markierte Notizen anzuzeigen. Mit dem Befehl `tag list` können "
|
||||
"alle Markierungen angezeigt werden."
|
||||
"<tag-command> kann \"add\", \"remove\" or \"list\" sein, um ein [Schlagwort] "
|
||||
"zu [Notiz] zuzuweisen oder zu entfernen, oder um mit [Schlagwort] markierte "
|
||||
"Notizen anzuzeigen. Mit dem Befehl `tag list` können alle Schlagwörter "
|
||||
"angezeigt werden."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid command: \"%s\""
|
||||
@@ -643,6 +644,18 @@ msgstr "Ausschneiden"
|
||||
msgid "Paste"
|
||||
msgstr "Einfügen"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr "Fett"
|
||||
|
||||
msgid "Italic"
|
||||
msgstr "Kursiv"
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr "Datum / Uhrzeit einfügen"
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr "Im externen Editor bearbeiten"
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Alle Notizen durchsuchen"
|
||||
|
||||
@@ -661,8 +674,11 @@ msgstr "Werkzeuge"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Status der Synchronisation"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr "Web Clipper Optionen"
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Verschlüsselung"
|
||||
msgstr "Verschlüsselungsoptionen"
|
||||
|
||||
msgid "General Options"
|
||||
msgstr "Allgemeine Einstellungen"
|
||||
@@ -677,7 +693,7 @@ msgid "Make a donation"
|
||||
msgstr "Spenden"
|
||||
|
||||
msgid "Check for updates..."
|
||||
msgstr "Überprüfe auf Updates..."
|
||||
msgstr "Überprüfe auf Updates…"
|
||||
|
||||
msgid "About Joplin"
|
||||
msgstr "Über Joplin"
|
||||
@@ -703,7 +719,7 @@ msgid "Current version is up-to-date."
|
||||
msgstr "Die aktuelle Version ist up-to-date."
|
||||
|
||||
msgid "An update is available, do you want to download it now?"
|
||||
msgstr "Es ist ein Update verfügbar! Soll dies jetzt heruntergeladen werden?"
|
||||
msgstr "Es ist ein Update verfügbar! Soll es jetzt heruntergeladen werden?"
|
||||
|
||||
msgid "Yes"
|
||||
msgstr "Ja"
|
||||
@@ -711,6 +727,75 @@ msgstr "Ja"
|
||||
msgid "No"
|
||||
msgstr "Nein"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
"Der Webclipperservice ist bereits aktiviert und auf Autostart eingestellt."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr "Status: Gestartet auf Port %d"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Status: %s"
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr "Web Clipper Service deaktivieren"
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr "Der Web Clipper Service ist nicht aktiviert."
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr "Web Clipper Service aktivieren"
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
"Joplin Web Clipper erlaubt im Browser das Speichern von Webseiten und "
|
||||
"Screenshots nach Joplin."
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr "Um den Web Clipper zu benutzen, musst du folgendes machen:"
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr "Schritt 1: Clipper Service aktivieren"
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
"Dieser Service erlaubt es der Browser-Erweiterung mit Joplin zu "
|
||||
"kommunizieren. Beim Aktivieren kann deine Firewall dich nach der Erlaubnis "
|
||||
"bitten, dass Joplin auf einen bestimmten Port mithört."
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr "Schritt 2: Erweiterung installieren"
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
"Lade die entsprechende Erweiterung für deinen Browser herunter und "
|
||||
"installiere sie:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Erweiterte Optionen anzeigen"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Überprüfen der Synchronisationseinstellungen"
|
||||
|
||||
@@ -718,12 +803,15 @@ msgstr "Überprüfen der Synchronisationseinstellungen"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Notizen und Einstellungen werden gespeichert in: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
msgid "Apply"
|
||||
msgstr "Anwenden"
|
||||
|
||||
msgid "Submit"
|
||||
msgstr "Absenden"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -827,14 +915,17 @@ msgid "Notebook title:"
|
||||
msgstr "Notizbuch Titel:"
|
||||
|
||||
msgid "Add or remove tags:"
|
||||
msgstr "Füge hinzu oder entferne Markierungen:"
|
||||
msgstr "Füge hinzu oder entferne Schlagwörter:"
|
||||
|
||||
msgid "Separate each tag by a comma."
|
||||
msgstr "Trenne jede Markierung mit einem Komma."
|
||||
msgstr "Trenne jedes Schlagwort mit einem Komma."
|
||||
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Notizbuch umbenennen:"
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr "Schlagwort umbenennen:"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Alarm erstellen:"
|
||||
|
||||
@@ -857,14 +948,20 @@ msgid "Set the password"
|
||||
msgstr "Setze ein Passwort"
|
||||
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Markierungen hinzufügen oder entfernen"
|
||||
msgstr "Schlagwörter hinzufügen oder entfernen"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr "Duplizieren"
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "%s kopieren"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Zwischen Notiz und To-Do Typ wechseln"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Copy Markdown link"
|
||||
msgstr "Markdown"
|
||||
msgstr "Markdown-Link kopieren"
|
||||
|
||||
msgid "Delete"
|
||||
msgstr "Löschen"
|
||||
@@ -883,16 +980,52 @@ msgstr ""
|
||||
"Momentan existieren noch keine Notizbücher. Erstelle eines, indem du auf "
|
||||
"\"Neues Notizbuch\" drückst."
|
||||
|
||||
msgid "Location"
|
||||
msgstr "Ablageort"
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Öffne..."
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Dieses Notizbuch konnte nicht geöffnet werden: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Sichern unter..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr "Pfad in Zwischenablage kopieren"
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr "Link-Adresse kopieren"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Nicht unterstützter Link oder Nachricht: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Diese Notiz hat keinen Inhalt. Klicke auf „%s“ um den Editor zu aktivieren "
|
||||
"und die Notiz zu bearbeiten."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr "Fetter Text"
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr "hervorgehobener Text"
|
||||
|
||||
msgid "List item"
|
||||
msgstr "Listeneintrag"
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr "Weblink einfügen"
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Datei anhängen"
|
||||
|
||||
@@ -903,12 +1036,39 @@ msgid "Set alarm"
|
||||
msgstr "Alarm erstellen"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Diese Notiz hat keinen Inhalt. Klicke auf „%s“ um den Editor zu aktivieren "
|
||||
"und die Notiz zu bearbeiten."
|
||||
msgid "In: %s"
|
||||
msgstr "In: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr "Notiz-Eigenschaften"
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr "Weblink"
|
||||
|
||||
msgid "Code"
|
||||
msgstr "Code"
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr "Nummerierte Liste"
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr "Aufzählung"
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr "Kontrollkästchen"
|
||||
|
||||
msgid "Heading"
|
||||
msgstr "Überschrift"
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr "Horizontale Linie"
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr "Klicken Sie hier, um die externe Bearbeitung anzuhalten"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Ansehen…"
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "To-Do"
|
||||
@@ -927,7 +1087,7 @@ msgid "Clear"
|
||||
msgstr "Leeren"
|
||||
|
||||
msgid "OneDrive Login"
|
||||
msgstr "OneDrive Login"
|
||||
msgstr "OneDrive Anmeldung"
|
||||
|
||||
msgid "Dropbox Login"
|
||||
msgstr "Dropbox Anmeldung"
|
||||
@@ -941,8 +1101,11 @@ msgstr "Synchronisations Status"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Verschlüsselungsoptionen"
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr "Clipper Einstellungen"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Diese Markierung von allen Notizen entfernen?"
|
||||
msgstr "Dieses Schlagwort von allen Notizen entfernen?"
|
||||
|
||||
msgid "Remove this search from the sidebar?"
|
||||
msgstr "Diese Suche von der Seitenleiste entfernen?"
|
||||
@@ -1053,7 +1216,7 @@ msgid "State: %s."
|
||||
msgstr "Status: %s."
|
||||
|
||||
msgid "Cancelling..."
|
||||
msgstr "Abbrechen..."
|
||||
msgstr "Abbrechen…"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Completed: %s"
|
||||
@@ -1064,7 +1227,7 @@ msgid "Last error: %s"
|
||||
msgstr "Letzte Fehlermeldung: %s"
|
||||
|
||||
msgid "Idle"
|
||||
msgstr "wartend"
|
||||
msgstr "Wartend"
|
||||
|
||||
msgid "In progress"
|
||||
msgstr "In Bearbeitung"
|
||||
@@ -1082,19 +1245,23 @@ msgstr "Verschlüsselte Objekte können nicht verändert werden"
|
||||
msgid "Conflicts"
|
||||
msgstr "Konflikte"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Kann Notiz nicht zu Notizbuch \"%s\" verschieben"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Ein Notizbuch mit diesem Titel existiert bereits : \"%s\""
|
||||
msgstr "Kann Notizbuch nicht an diesen Ort verschieben"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
"Notizbuch kann nicht \"%s\" genannt werden. Dies ist ein reservierter Titel."
|
||||
|
||||
msgid "title"
|
||||
msgstr "Titel"
|
||||
|
||||
msgid "updated date"
|
||||
msgstr "Aktualsierungsdatum"
|
||||
|
||||
msgid "created date"
|
||||
msgstr "Erstelldatum"
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Unbenannt"
|
||||
|
||||
@@ -1109,17 +1276,6 @@ msgstr "Kann Notiz nicht zu Notizbuch \"%s\" kopieren"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Kann Notiz nicht zu Notizbuch \"%s\" verschieben"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Textverarbeitungsprogramm"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Das Textverarbeitungsprogramm, mit dem Notizen geöffnet werden. Wenn keines "
|
||||
"ausgewählt wurde, wird Joplin versuchen das standard-"
|
||||
"Textverarbeitungsprogramm zu erkennen."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Sprache"
|
||||
|
||||
@@ -1141,9 +1297,8 @@ msgstr "Dunkel"
|
||||
msgid "Uncompleted to-dos on top"
|
||||
msgstr "Zeige unvollständige To-Dos an oberster Stelle"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Show completed to-dos"
|
||||
msgstr "Zeige unvollständige To-Dos an oberster Stelle"
|
||||
msgstr "Abgeschlossene ToDos anzeigen"
|
||||
|
||||
msgid "Sort notes by"
|
||||
msgstr "Sortiere Notizen nach"
|
||||
@@ -1172,6 +1327,9 @@ msgstr "Zeige Tray Icon"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr "Hinweis: Funktioniert nicht in allen Desktopumgebungen."
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr "Starte die Anwendung minimiert im Tray"
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Zoomstufe der Benutzeroberfläche"
|
||||
|
||||
@@ -1179,11 +1337,12 @@ msgid "Editor font family"
|
||||
msgstr "Editor Schriftenfamilie"
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Der Name der Schrift wird nicht überprüft. Ist dieser inkorrekt oder leer "
|
||||
"wird eine generische Monospace Schrift verwendet."
|
||||
"Dies muss eine *Monospace* Schriftart sein, sonst funktioniert es nicht "
|
||||
"richtig. Wenn die Schriftart falsch oder leer ist, wird eine "
|
||||
"voreingestellte, generische Monospace-Schriftart verwendet."
|
||||
|
||||
msgid "Automatically update the application"
|
||||
msgstr "Die Applikation automatisch aktualisieren"
|
||||
@@ -1203,6 +1362,16 @@ msgstr "%d Stunde"
|
||||
msgid "%d hours"
|
||||
msgstr "%d Stunden"
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr "Editoraufruf"
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Der Editor, mit dem Notizen geöffnet werden. Wenn keiner ausgewählt wurde, "
|
||||
"wird Joplin versuchen den Standardeditor zu erkennen."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Erweiterte Optionen anzeigen"
|
||||
|
||||
@@ -1230,6 +1399,16 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
"Achtung: Stelle sicher, dass Du vor der Synchronisation alle Inhalte an den "
|
||||
"neuen Ablageort kopiert hast, sonst werden alle Dateien gelöscht! Lies auch "
|
||||
"die FAQs hierzu: %s"
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Nextcloud Benutzername"
|
||||
|
||||
@@ -1245,10 +1424,33 @@ msgstr "WebDAV Benutzername"
|
||||
msgid "WebDAV password"
|
||||
msgstr "WebDAV Passwort"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr "Benutzerdefinierte TLS-Zertifikate"
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
"Kommagetrennte Liste von Pfaden zu Verzeichnissen, aus denen die Zertifikate "
|
||||
"geladen werden, oder Pfad zu einzelnen Zertifikatsdateien. Zum Beispiel: / "
|
||||
"my / cert_dir, /other/custom.pem. Wenn Sie Änderungen an den TLS-"
|
||||
"Einstellungen vornehmen, müssen Sie Ihre Änderungen speichern, bevor Sie auf "
|
||||
"\"Synchronisierungskonfiguration prüfen\" klicken."
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr "Ignoriere TLS-Zertifikatfehler"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Ungültiger Optionswert: \"%s\". Mögliche Werte sind: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
"Das Schlagwort \"%s\" existiert bereits. Bitte wähle einen anderen Namen."
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Joplin Export Datei"
|
||||
|
||||
@@ -1266,7 +1468,7 @@ msgstr "Verzeichnis"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Cannot load \"%s\" module for format \"%s\""
|
||||
msgstr "Das Modul „%s“ für das Format „%s“ kann nicht geladen werden"
|
||||
msgstr "Das Modul \"%s\" für das Format \"%s\" kann nicht geladen werden"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Please specify import format for %s"
|
||||
@@ -1366,6 +1568,9 @@ msgstr "%d Notizen in das Notizbuch \"%s\" verschieben?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Tippe hier, um das Entschlüsselungspasswort festzulegen."
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr "Alarm speichern"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Datum auswählen"
|
||||
|
||||
@@ -1375,11 +1580,37 @@ msgstr "Bestätigen"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Synchronisation abbrechen"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Entschlüsselte Objekte: %d/%d"
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Neue Markierungen:"
|
||||
msgstr "Neue Schlagwörter:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Neue Markierungen eingeben oder aus der Liste auswählen"
|
||||
msgstr "Neues Schlagwort eingeben oder aus der Liste auswählen"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
"Um korrekt arbeiten zu können, benötigt die Anwendung die folgenden "
|
||||
"Berechtigungen. Bitte aktiviere diese in deinen Telefoneinstellungen, unter "
|
||||
"Apps > Joplin > Berechtigungen"
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
"- Speicher: um das Anhängen von Dateien an Notizen und die Synchronisation "
|
||||
"des Dateisystems zu ermöglichen."
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr "- Kamera: um ein Bild aufzunehmen und an eine Notiz anzuhängen."
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
"- Standort: zum Anhängen von Geolokalisierungsinformationen an eine Notiz."
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Website von Joplin"
|
||||
@@ -1428,11 +1659,12 @@ msgstr "Änderungen verwerfen"
|
||||
|
||||
#, javascript-format
|
||||
msgid "No item with ID %s"
|
||||
msgstr ""
|
||||
msgstr "Kein Element mit ID %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid "The Joplin mobile app does not currently support this type of link: %s"
|
||||
msgstr ""
|
||||
"Die Joplin Handy-Applikation unterstützt derzeit diese Art von Link nicht: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported image type: %s"
|
||||
@@ -1444,6 +1676,9 @@ msgstr "Foto anhängen"
|
||||
msgid "Attach any file"
|
||||
msgstr "Beliebige Datei anhängen"
|
||||
|
||||
msgid "Share"
|
||||
msgstr "Teilen"
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "In eine Notiz umwandeln"
|
||||
|
||||
@@ -1472,8 +1707,8 @@ msgid ""
|
||||
"Click on the (+) button to create a new note or notebook. Click on the side "
|
||||
"menu to access your existing notebooks."
|
||||
msgstr ""
|
||||
"Drücke auf den (+) Knopf, um eine neue Notiz oder ein neues Notizbuch zu "
|
||||
"erstellen. Tippe auf die Seitenleiste, um auf deine existierenden "
|
||||
"Drücke auf die (+)-Schaltfläche, um eine neue Notiz oder ein neues Notizbuch "
|
||||
"zu erstellen. Tippe auf die Seitenleiste, um auf deine existierenden "
|
||||
"Notizbücher zuzugreifen."
|
||||
|
||||
msgid "You currently have no notebook. Create one by clicking on (+) button."
|
||||
@@ -1484,6 +1719,9 @@ msgstr ""
|
||||
msgid "Welcome"
|
||||
msgstr "Willkommen"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Ein Notizbuch mit diesem Titel existiert bereits : \"%s\""
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Suchen"
|
||||
|
||||
|
@@ -414,7 +414,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
@@ -552,6 +552,18 @@ msgstr ""
|
||||
msgid "Paste"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr ""
|
||||
|
||||
@@ -570,6 +582,9 @@ msgstr ""
|
||||
msgid "Synchronisation status"
|
||||
msgstr ""
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr ""
|
||||
|
||||
@@ -620,6 +635,66 @@ msgstr ""
|
||||
msgid "No"
|
||||
msgstr ""
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Advanced options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr ""
|
||||
|
||||
@@ -627,12 +702,15 @@ msgstr ""
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -728,6 +806,9 @@ msgstr ""
|
||||
msgid "Rename notebook:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr ""
|
||||
|
||||
@@ -752,6 +833,13 @@ msgstr ""
|
||||
msgid "Add or remove tags"
|
||||
msgstr ""
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr ""
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr ""
|
||||
|
||||
@@ -771,16 +859,50 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr ""
|
||||
|
||||
@@ -791,9 +913,37 @@ msgid "Set alarm"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgid "In: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
msgid "Watching..."
|
||||
msgstr ""
|
||||
|
||||
msgid "to-do"
|
||||
@@ -827,6 +977,9 @@ msgstr ""
|
||||
msgid "Encryption Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr ""
|
||||
|
||||
@@ -963,11 +1116,16 @@ msgid "Cannot move notebook to this location"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgid "title"
|
||||
msgstr ""
|
||||
|
||||
msgid "updated date"
|
||||
msgstr ""
|
||||
|
||||
msgid "created date"
|
||||
msgstr ""
|
||||
|
||||
msgid "Untitled"
|
||||
@@ -984,14 +1142,6 @@ msgstr ""
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr ""
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
|
||||
msgid "Language"
|
||||
msgstr ""
|
||||
|
||||
@@ -1043,6 +1193,9 @@ msgstr ""
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr ""
|
||||
|
||||
@@ -1050,8 +1203,8 @@ msgid "Editor font family"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1072,6 +1225,14 @@ msgstr ""
|
||||
msgid "%d hours"
|
||||
msgstr ""
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr ""
|
||||
|
||||
@@ -1094,6 +1255,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr ""
|
||||
|
||||
@@ -1109,10 +1277,27 @@ msgstr ""
|
||||
msgid "WebDAV password"
|
||||
msgstr ""
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr ""
|
||||
|
||||
@@ -1222,6 +1407,9 @@ msgstr ""
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr ""
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select date"
|
||||
msgstr ""
|
||||
|
||||
@@ -1231,12 +1419,32 @@ msgstr ""
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr ""
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr ""
|
||||
|
||||
@@ -1300,6 +1508,9 @@ msgstr ""
|
||||
msgid "Attach any file"
|
||||
msgstr ""
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr ""
|
||||
|
||||
|
@@ -460,10 +460,11 @@ msgstr "Iniciando sincronización..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Cancelando... Por favor espere."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> puede ser \"add\", \"remove\" o \"list\" para asignar o "
|
||||
"eliminar [tag] de [note], o para listar las notas asociadas con [tag]. El "
|
||||
@@ -628,6 +629,18 @@ msgstr "Cortar"
|
||||
msgid "Paste"
|
||||
msgstr "Pegar"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr "Negrita"
|
||||
|
||||
msgid "Italic"
|
||||
msgstr "Cursiva"
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr "Introduce fecha"
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr "Editar con un editor externo"
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Buscar en todas las notas"
|
||||
|
||||
@@ -646,6 +659,9 @@ msgstr "Herramientas"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Estado de la sincronización"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr "Opciones de recorte web"
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Opciones de cifrado"
|
||||
|
||||
@@ -696,6 +712,74 @@ msgstr "Sí"
|
||||
msgid "No"
|
||||
msgstr "No"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
"El servicio de recorte web está habilitado y configurado para que inicie "
|
||||
"automáticamente."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr "Estado: Iniciado en el puerto %d"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Estado: %s"
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr "Deshabilitar el servicio de recorte web"
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr "El servicio de recorte web no está habilitado."
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr "Habilitar el servicio de recorte web"
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
"El recorte web de Joplin permite guardar páginas web y capturas de pantalla "
|
||||
"desde su navegador."
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr "Para utilizar el recorte web, necesita hacer lo siguiente:"
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr "Paso 1: Habilitar el servicio de recorte"
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
"Este servicio permite a la extensión del navegador comunicarse con Joplin. "
|
||||
"Cuando la habilite su cortafuegos puede solicitar permisos para que Joplin "
|
||||
"escuche en un puerto concreto."
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr "Paso 2: Instalar la extensión"
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr "Descargar e instalar para su navegador:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Mostrar opciones avanzadas"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Comprobar sincronización"
|
||||
|
||||
@@ -703,12 +787,15 @@ msgstr "Comprobar sincronización"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Las notas y los ajustes se guardan en: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
msgid "Apply"
|
||||
msgstr "Aplicar"
|
||||
|
||||
msgid "Submit"
|
||||
msgstr "Aceptar"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -819,6 +906,9 @@ msgstr "Separar cada etiqueta por una coma."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Renombrar libreta:"
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr "Renombrar etiqueta:"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Ajustar alarma:"
|
||||
|
||||
@@ -843,6 +933,13 @@ msgstr "Establecer la contraseña"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Añadir o borrar etiquetas"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr "Duplicado"
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "%s - Copiar"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Cambiar entre nota y lista de tareas"
|
||||
|
||||
@@ -862,16 +959,52 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "No hay ninguna libreta. Cree una pulsando en «Libreta nueva»."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Abrir..."
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "No se ha podido abrir este archivo: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Guardar como..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr "Copiar la ruta en el portapapeles"
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr "Copiar enlace"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Enlace o mensaje no soportado: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Esta nota no tiene contenido. Pulse en \"%s\" para cambiar al editor y "
|
||||
"editar la nota."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr "texto destacado"
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr "texto resaltado"
|
||||
|
||||
msgid "List item"
|
||||
msgstr "Listar elementos"
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr "Insertar hipervínculo"
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Adjuntar archivo"
|
||||
|
||||
@@ -882,12 +1015,38 @@ msgid "Set alarm"
|
||||
msgstr "Establecer alarma"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgid "In: %s"
|
||||
msgstr "En: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
"Esta nota no tiene contenido. Pulse en \"%s\" para cambiar al editor y "
|
||||
"editar la nota."
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr "Hipervínculo"
|
||||
|
||||
msgid "Code"
|
||||
msgstr "Código"
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr "Lista numerada"
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr "Lista con viñetas"
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr "Casilla"
|
||||
|
||||
msgid "Heading"
|
||||
msgstr "Título"
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr "Regla horizontal"
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr "Pulsa para detener la edición externa"
|
||||
|
||||
msgid "Watching..."
|
||||
msgstr "Mirando..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "lista de tareas"
|
||||
@@ -920,6 +1079,9 @@ msgstr "Estado de la sincronización"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Opciones de cifrado"
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr "Opciones de recorte"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "¿Desea eliminar esta etiqueta de todas las notas?"
|
||||
|
||||
@@ -1063,15 +1225,20 @@ msgstr "Conflictos"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "No se puede mover la libreta a este lugar"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Ya existe una libreta con este nombre: «%s»"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
"No se puede usar el nombre «%s» para una libreta; es un título reservado."
|
||||
|
||||
msgid "title"
|
||||
msgstr "título"
|
||||
|
||||
msgid "updated date"
|
||||
msgstr "fecha de actualización"
|
||||
|
||||
msgid "created date"
|
||||
msgstr "fecha de creación"
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Sin título"
|
||||
|
||||
@@ -1086,16 +1253,6 @@ msgstr "No se ha podido copiar la nota a la libreta «%s»"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "No se ha podido mover la nota a la libreta «%s»"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Editor de texto"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"El editor que se usará para abrir una nota. Se intentará auto-detectar el "
|
||||
"editor predeterminado si no se proporciona ninguno."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Idioma"
|
||||
|
||||
@@ -1117,9 +1274,8 @@ msgstr "Oscuro"
|
||||
msgid "Uncompleted to-dos on top"
|
||||
msgstr "Mostrar tareas incompletas al inicio de las listas"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Show completed to-dos"
|
||||
msgstr "Mostrar tareas incompletas al inicio de las listas"
|
||||
msgstr "Mostrar tareas completadas"
|
||||
|
||||
msgid "Sort notes by"
|
||||
msgstr "Ordenar notas por"
|
||||
@@ -1148,6 +1304,9 @@ msgstr "Mostrar icono en la bandeja"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr "Nota: No funciona en todos los entornos de escritorio."
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Establecer el porcentaje de aumento de la aplicación"
|
||||
|
||||
@@ -1155,11 +1314,12 @@ msgid "Editor font family"
|
||||
msgstr "Fuente del editor"
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"El nombre de la fuente no se comprobado. Si es incorrecto o está vacío, se "
|
||||
"utilizará una fuente genérica monoespaciada."
|
||||
"Esta debe ser una fuente *monoespaciada* o no funcionará correctamente. Si "
|
||||
"la fuente es incorrecta o vacía, se configurará una fuente monoespaciada "
|
||||
"genérica."
|
||||
|
||||
msgid "Automatically update the application"
|
||||
msgstr "Actualizar la aplicación automáticamente"
|
||||
@@ -1179,6 +1339,17 @@ msgstr "%d hora"
|
||||
msgid "%d hours"
|
||||
msgstr "%d horas"
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr "Editor de texto"
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"El comando del editor (puede incluir argumentos) que se utilizará para abrir "
|
||||
"una nota. Si no se provee ninguno se intentará auto detectar el editor por "
|
||||
"defecto."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Mostrar opciones avanzadas"
|
||||
|
||||
@@ -1206,6 +1377,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Servidor WebDAV de Nextcloud"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Usuario de Nextcloud"
|
||||
|
||||
@@ -1221,10 +1399,32 @@ msgstr "Usuario de WebDAV"
|
||||
msgid "WebDAV password"
|
||||
msgstr "Contraseña de WebDAV"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr "Certificados TLS personalizados"
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
"Lista de rutas de los directorios de dónde cargar los certificados separados "
|
||||
"por comas, o la ruta individual de los certificados. Por ejemplo: /mi/"
|
||||
"cert_dir, /otro/personalizado.pem. Tenga en cuenta que si realiza cambios en "
|
||||
"la configuración de los certificados debe guardar los cambios antes de "
|
||||
"pulsar en \"Comprobar la configuración de sincronización\"."
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr "Ignorar errores en certificados TLS"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Opción inválida: «%s». Los valores posibles son: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Archivo de exportación de Joplin"
|
||||
|
||||
@@ -1339,6 +1539,9 @@ msgstr "¿Desea mover %d notas a libreta «%s»?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Presione para establecer la contraseña de descifrado."
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr "Establecer alarma"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Seleccione fecha"
|
||||
|
||||
@@ -1348,12 +1551,39 @@ msgstr "Confirmar"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Cancelar sincronización"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Descifrando elementos: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Nuevas etiquetas:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Escriba nuevas etiquetas o seleccionelas de la lista"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
"Para funcionar correctamente, la aplicación necesita los siguientes "
|
||||
"permisos. Por favor habilitelos en su teléfono, en Aplicaciones > Joplin > "
|
||||
"Permisos"
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
"- Almacenamiento: Permite adjuntar archivos a las notas y habilitar la "
|
||||
"sincronización del sistema de ficheros."
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr "- Cámara: permite tomar fotografías y adjuntarlas en una nota."
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
"- Localización: permite adjuntar la información de geolocalización en la "
|
||||
"nota."
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Sitio web de Joplin"
|
||||
|
||||
@@ -1418,6 +1648,9 @@ msgstr "Adjuntar foto"
|
||||
msgid "Attach any file"
|
||||
msgstr "Adjuntar cualquier archivo"
|
||||
|
||||
msgid "Share"
|
||||
msgstr "Compartir"
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Convertir a nota"
|
||||
|
||||
@@ -1456,6 +1689,9 @@ msgstr ""
|
||||
msgid "Welcome"
|
||||
msgstr "Bienvenido"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Ya existe una libreta con este nombre: «%s»"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "For more information about End-To-End Encryption (E2EE) and advices on "
|
||||
#~ "how to enable it please check the documentation"
|
||||
|
@@ -458,10 +458,11 @@ msgstr "Sinkronizazioa hasten..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Bertan behera uzten... itxaron, mesedez."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> izan daiteke \"add\", \"remove\" edo \"list\" [oharra]tik "
|
||||
"[etiketa] esleitu edo kentzeko, edo [etiketa]rekin elkartutako oharrak "
|
||||
@@ -627,6 +628,18 @@ msgstr "Moztu"
|
||||
msgid "Paste"
|
||||
msgstr "Itsatsi"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Bilatu ohar guztietan"
|
||||
|
||||
@@ -645,6 +658,9 @@ msgstr "Tresnak"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Sinkronizazioaren egoera"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Zifratzeko aukerak"
|
||||
|
||||
@@ -697,6 +713,67 @@ msgstr ""
|
||||
msgid "No"
|
||||
msgstr "E"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Egoera: \"%s\"."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Erakutsi aukera aurreratuak"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Sinkronizazioa utzi"
|
||||
@@ -705,12 +782,15 @@ msgstr "Sinkronizazioa utzi"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Oharrak eta ezarpenak hemen daude gordeta: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gorde"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gorde"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -820,6 +900,10 @@ msgstr "Banatu etiketak koma erabiliaz."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Berrizendatu koadernoa:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Berrizendatu"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Ezarri alarma:"
|
||||
|
||||
@@ -845,6 +929,13 @@ msgstr "Ezarri pasahitza"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Gehitu edo ezabatu etiketak"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Kopiatu"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Aldatu oharra eta zeregin eren artean."
|
||||
|
||||
@@ -864,17 +955,51 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Momentuz ez dago koadernorik. Sortu bat \"Koaderno berria\" sakatuta."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Koadernoa ezin gorde daiteke: %s"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save as..."
|
||||
msgstr "Gorde aldaketak"
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Esteka edo mezu ez dago onartua: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Erantsi fitxategia"
|
||||
|
||||
@@ -884,12 +1009,41 @@ msgstr "Etiketak"
|
||||
msgid "Set alarm"
|
||||
msgstr "Ezarri alarma"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Bertan behera uzten..."
|
||||
|
||||
#, fuzzy
|
||||
msgid "to-do"
|
||||
msgstr "Zeregin berria"
|
||||
@@ -924,6 +1078,10 @@ msgstr "Sinkronizazioaren egoera"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Zifratzeko aukerak"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Ezarpenak"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Kendu etiketa hori ohar guztietatik?"
|
||||
|
||||
@@ -1070,15 +1228,23 @@ msgstr "Gatazkak"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Ezin eraman daiteke oharra \"%s\" koadernora"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Dagoeneko bada koaderno bat izen horrekin: \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
"Koadernoak ezin izendatu daitezke \"%s\", izen hori Joplinek gordeta dauka"
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Titulu gabekoa"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Eguneratuta: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Sortuta: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Titulu gabekoa"
|
||||
|
||||
@@ -1093,16 +1259,6 @@ msgstr "Ezin kopia daiteke oharra \"%s\" koadernora"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Ezin eraman daiteke oharra \"%s\" koadernora"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Testu editorea"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editorea erabiliko da oharra zabaltzeko. Ez badago zehaztutakorik lehenetsia "
|
||||
"igartzen ahaleginduko da."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Hizkuntza"
|
||||
|
||||
@@ -1159,6 +1315,9 @@ msgstr ""
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Ezarri aplikazioaren zoomaren ehunekoa"
|
||||
@@ -1167,8 +1326,8 @@ msgid "Editor font family"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1189,6 +1348,18 @@ msgstr "% ordua"
|
||||
msgid "%d hours"
|
||||
msgstr "% orduak"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Testu editorea"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editorea erabiliko da oharra zabaltzeko. Ez badago zehaztutakorik lehenetsia "
|
||||
"igartzen ahaleginduko da."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Erakutsi aukera aurreratuak"
|
||||
|
||||
@@ -1215,6 +1386,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Nextcloud erabiltzaile-izena"
|
||||
|
||||
@@ -1233,10 +1411,27 @@ msgstr "Nextcloud erabiltzaile-izena"
|
||||
msgid "WebDAV password"
|
||||
msgstr "Ezarri pasahitza"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Balio aukera baliogabea: \"%s\". Litezkeen balioak: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Evernotetik esportatutako fitxategiak"
|
||||
@@ -1351,6 +1546,10 @@ msgstr "Mugitu %d oharrak \"%s\" koadernora?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Sakatu deszifratze pasahitza ezartzeko."
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Ezarri alarma"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Data aukeratu"
|
||||
|
||||
@@ -1360,12 +1559,32 @@ msgstr "Baieztatu"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Sinkronizazioa utzi"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Itemak eskuratuta: %d%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr ""
|
||||
|
||||
@@ -1430,6 +1649,9 @@ msgstr "Argazkia erantsi"
|
||||
msgid "Attach any file"
|
||||
msgstr "Erantsi fitxategiren bat"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Oharra bihurtu"
|
||||
|
||||
@@ -1467,6 +1689,9 @@ msgstr "Oraindik ez duzu koadernorik. Sortu bat (+) botoian sakatuta."
|
||||
msgid "Welcome"
|
||||
msgstr "Ongi etorri!"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Dagoeneko bada koaderno bat izen horrekin: \"%s\""
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Bilaketak"
|
||||
|
||||
|
@@ -59,7 +59,7 @@ msgstr ""
|
||||
"La commande \"%s\" est disponible uniquement en mode d'interface graphique"
|
||||
|
||||
msgid "Cannot change encrypted item"
|
||||
msgstr "Un objet crypté ne peut pas être modifié"
|
||||
msgstr "Un objet chiffré ne peut pas être modifié"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Missing required argument: %s"
|
||||
@@ -127,7 +127,7 @@ msgid ""
|
||||
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, "
|
||||
"`status` and `target-status`."
|
||||
msgstr ""
|
||||
"Gérer la configuration E2EE (Cryptage de bout à bout). Les commandes sont "
|
||||
"Gérer la configuration E2EE (Chiffrement de bout à bout). Les commandes sont "
|
||||
"`enable`, `disable`, `decrypt` et `status` et `target-status`."
|
||||
|
||||
msgid "Enter master password:"
|
||||
@@ -140,11 +140,11 @@ msgid ""
|
||||
"Starting decryption... Please wait as it may take several minutes depending "
|
||||
"on how much there is to decrypt."
|
||||
msgstr ""
|
||||
"Démarrage du décryptage... Veuillez patienter car cela pourrait prendre "
|
||||
"plusieurs minutes selon le nombre d'objets à décrypter."
|
||||
"Démarrage du déchiffrement... Veuillez patienter car cela pourrait prendre "
|
||||
"plusieurs minutes selon le nombre d'objets à déchiffrer."
|
||||
|
||||
msgid "Completed decryption."
|
||||
msgstr "Décryptage complété."
|
||||
msgstr "Déchiffrement complété."
|
||||
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
@@ -154,7 +154,7 @@ msgstr "Désactivé"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Encryption is: %s"
|
||||
msgstr "Le cryptage est : %s"
|
||||
msgstr "Le chiffrement est : %s"
|
||||
|
||||
msgid "Edit note."
|
||||
msgstr "Éditer la note."
|
||||
@@ -464,12 +464,12 @@ msgstr "Annulation... Veuillez attendre."
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> peut être \"add\", \"remove\" ou \"list\" pour assigner ou "
|
||||
"enlever l'étiquette [tag] de la [note], our pour lister les notes associées "
|
||||
"avec l'étiquette [tag]. La commande `tag list` peut être utilisée pour "
|
||||
"lister les étiquettes."
|
||||
"lister les étiquettes (utilisez l'option -l pour les options complètes)."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid command: \"%s\""
|
||||
@@ -571,10 +571,10 @@ msgid ""
|
||||
"supplied the password, the encrypted items are being decrypted in the "
|
||||
"background and will be available soon."
|
||||
msgstr ""
|
||||
"Au moins un objet est actuellement crypté et il se peut que vous deviez "
|
||||
"Au moins un objet est actuellement chiffré et il se peut que vous deviez "
|
||||
"fournir votre mot de passe maître. Pour se faire, veuillez taper `e2ee "
|
||||
"decrypt`. Si vous avez déjà fourni ce mot de passe, les objets cryptés vont "
|
||||
"être décrypté en tâche de fond et seront disponible prochainement."
|
||||
"decrypt`. Si vous avez déjà fourni ce mot de passe, les objets chiffrés vont "
|
||||
"être déchiffré en tâche de fond et seront disponible prochainement."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Exporting to \"%s\" as \"%s\" format. Please wait..."
|
||||
@@ -627,6 +627,18 @@ msgstr "Couper"
|
||||
msgid "Paste"
|
||||
msgstr "Coller"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr "Gras"
|
||||
|
||||
msgid "Italic"
|
||||
msgstr "Italique"
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr "Insérer la date et l'heure"
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr "Ouvrir dans un éditeur externe"
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Chercher dans toutes les notes"
|
||||
|
||||
@@ -645,8 +657,11 @@ msgstr "Outils"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "État de la synchronisation"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr "Options du Web Clipper"
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Options de cryptage"
|
||||
msgstr "Options de chiffrement"
|
||||
|
||||
msgid "General Options"
|
||||
msgstr "Options générales"
|
||||
@@ -696,6 +711,75 @@ msgstr "Oui"
|
||||
msgid "No"
|
||||
msgstr "Non"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr "Le code d'authentification a été copié dans le presse-papiers !"
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr "Le service du Web Clipper est activé et démarrera automatiquement."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr "État : Démarré sur le port %d"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "État : %s"
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr "Désactiver le service du Web Clipper"
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr "Le service du Web Clipper n'est pas activé."
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr "Activer le service du Web Clipper"
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
"Le Web Clipper permet d'enregistrer des pages web et des captures d'écran "
|
||||
"depuis votre navigateur vers Joplin."
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr "Pour utiliser le Web Clipper, veuillez suivre ces instructions :"
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr "Étape 1 : Activez le service du Web Clipper"
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
"Le service permet au module complémentaire de communiquer avec Joplin. "
|
||||
"Lorsque vous aller l'activer, il se pourrait que votre pare feu vous demande "
|
||||
"d'autoriser l'application Joplin."
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr "Étape 2 : Installez le module complémentaire"
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
"Téléchargez et installez le module complémentaire correspondant à votre "
|
||||
"navigateur :"
|
||||
|
||||
msgid "Advanced options"
|
||||
msgstr "Options avancées"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr "Code d'authentification :"
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr "Copier le code"
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
"Ce code d'authentification est nécessaire uniquement pour permettre aux "
|
||||
"logiciels tiers d'accéder aux données de Joplin."
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Vérifier config synchronisation"
|
||||
|
||||
@@ -703,20 +787,23 @@ msgstr "Vérifier config synchronisation"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Les notes et paramètres se trouve dans : %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Enregistrer"
|
||||
msgid "Apply"
|
||||
msgstr "Appliquer"
|
||||
|
||||
msgid "Submit"
|
||||
msgstr "Envoyer"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Enregistrer"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
"continue?"
|
||||
msgstr ""
|
||||
"Désactiver le cryptage signifie que *toutes* les notes et fichiers vont être "
|
||||
"re-synchronisés et envoyés décryptés sur la cible de la synchronisation. "
|
||||
"Souhaitez vous continuer ?"
|
||||
"Désactiver le chiffrement signifie que *toutes* les notes et fichiers vont "
|
||||
"être re-synchronisés et envoyés déchiffrés sur la cible de la "
|
||||
"synchronisation. Souhaitez vous continuer ?"
|
||||
|
||||
msgid ""
|
||||
"Enabling encryption means *all* your notes and attachments are going to be "
|
||||
@@ -724,17 +811,17 @@ msgid ""
|
||||
"password as, for security purposes, this will be the *only* way to decrypt "
|
||||
"the data! To enable encryption, please enter your password below."
|
||||
msgstr ""
|
||||
"Activer le cryptage signifie que *toutes* les notes et fichiers vont être re-"
|
||||
"synchronisés et envoyés cryptés vers la cible de la synchronisation. Ne "
|
||||
"Activer le chiffrement signifie que *toutes* les notes et fichiers vont être "
|
||||
"re-synchronisés et envoyés chiffrés vers la cible de la synchronisation. Ne "
|
||||
"perdez pas votre mot de passe car, pour des raisons de sécurité, ce sera la "
|
||||
"*seule* façon de décrypter les données ! Pour activer le cryptage, veuillez "
|
||||
"entrer votre mot de passe ci-dessous."
|
||||
"*seule* façon de déchiffrer les données ! Pour activer le chiffrement, "
|
||||
"veuillez entrer votre mot de passe ci-dessous."
|
||||
|
||||
msgid "Disable encryption"
|
||||
msgstr "Désactiver le cryptage"
|
||||
msgstr "Désactiver le chiffrement"
|
||||
|
||||
msgid "Enable encryption"
|
||||
msgstr "Activer le cryptage"
|
||||
msgstr "Activer le chiffrement"
|
||||
|
||||
msgid "Master Keys"
|
||||
msgstr "Clefs maître"
|
||||
@@ -765,10 +852,10 @@ msgid ""
|
||||
"as \"active\"). Any of the keys might be used for decryption, depending on "
|
||||
"how the notes or notebooks were originally encrypted."
|
||||
msgstr ""
|
||||
"Note : seule une clef maître va être utilisée pour le cryptage (celle "
|
||||
"marquée comme \"actif\" ci-dessus). N'importe quel clef peut-être utilisée "
|
||||
"pour le décryptage, selon la façon dont les notes ou carnets étaient cryptés "
|
||||
"à l'origine."
|
||||
"Note : seule une clef maître va être utilisée pour le chiffrement (celle "
|
||||
"marquée comme \"actif\" ci-dessus). N'importe quelle clef peut être utilisée "
|
||||
"pour le déchiffrement, selon la façon dont les notes ou carnets étaient "
|
||||
"chiffrés à l'origine."
|
||||
|
||||
msgid "Missing Master Keys"
|
||||
msgstr "Clefs maître manquantes"
|
||||
@@ -778,7 +865,7 @@ msgid ""
|
||||
"however the application does not currently have access to them. It is likely "
|
||||
"they will eventually be downloaded via synchronisation."
|
||||
msgstr ""
|
||||
"Les clefs maître avec ces identifiants sont utilisées pour crypter certains "
|
||||
"Les clefs maître avec ces identifiants sont utilisées pour chiffrer certains "
|
||||
"de vos objets, cependant le logiciel n'y a pour l'instant pas accès. Il est "
|
||||
"probable qu'elle vont être prochainement disponible via la synchronisation."
|
||||
|
||||
@@ -786,14 +873,14 @@ msgid ""
|
||||
"For more information about End-To-End Encryption (E2EE) and advices on how "
|
||||
"to enable it please check the documentation:"
|
||||
msgstr ""
|
||||
"Pour plus d'informations sur l'encryption de bout en bout, ainsi que des "
|
||||
"Pour plus d'informations sur le chiffrement de bout en bout, ainsi que des "
|
||||
"conseils pour l'activer, veuillez consulter la documentation :"
|
||||
|
||||
msgid "Status"
|
||||
msgstr "État"
|
||||
|
||||
msgid "Encryption is:"
|
||||
msgstr "Le cryptage est :"
|
||||
msgstr "Le chiffrement est :"
|
||||
|
||||
msgid "Back"
|
||||
msgstr "Retour"
|
||||
@@ -823,6 +910,9 @@ msgstr "Séparez chaque étiquette par une virgule."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Renommer le carnet :"
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr "Renommer étiquette :"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Régler alarme :"
|
||||
|
||||
@@ -839,7 +929,7 @@ msgid "View them now"
|
||||
msgstr "Les voir maintenant"
|
||||
|
||||
msgid "Some items cannot be decrypted."
|
||||
msgstr "Certains objets ne peuvent être décryptés."
|
||||
msgstr "Certains objets ne peuvent être déchiffrés."
|
||||
|
||||
msgid "Set the password"
|
||||
msgstr "Définir le mot de passe"
|
||||
@@ -847,6 +937,13 @@ msgstr "Définir le mot de passe"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Gérer les étiquettes"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr "Dupliquer"
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "%s - Copie"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Alterner entre note et tâche"
|
||||
|
||||
@@ -869,16 +966,52 @@ msgstr ""
|
||||
"Il n'y a pour l'instant aucun carnet. Créez-en un en cliquant sur \"Nouveau "
|
||||
"carnet\"."
|
||||
|
||||
msgid "Location"
|
||||
msgstr "Lieu"
|
||||
|
||||
msgid "URL"
|
||||
msgstr "URL"
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Ouvrir..."
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Ce fichier n'a pas pu être ouvert : %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Enregistrer sous..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr "Copier le chemin"
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr "Copier l'adresse du lien"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Lien ou message non géré : %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Cette note n'a pas de contenu. Cliquer sur \"%s\" pour basculer vers "
|
||||
"l'éditeur et éditer cette note."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr "texte en gras"
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr "texte en italique"
|
||||
|
||||
msgid "List item"
|
||||
msgstr "Élément de liste"
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr "Insérer lien"
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Attacher un fichier"
|
||||
|
||||
@@ -889,12 +1022,38 @@ msgid "Set alarm"
|
||||
msgstr "Régler alarme"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Cette note n'a pas de contenu. Cliquer sur \"%s\" pour basculer vers "
|
||||
"l'éditeur et éditer cette note."
|
||||
msgid "In: %s"
|
||||
msgstr "Dans : %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr "Propriétés de la note"
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr "Lien"
|
||||
|
||||
msgid "Code"
|
||||
msgstr "Code"
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr "Liste numérotée"
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr "Liste à puces"
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr "Case à cocher"
|
||||
|
||||
msgid "Heading"
|
||||
msgstr "Titre"
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr "Règle horizontale"
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr "Cliquez pour arrêter l'édition externe"
|
||||
|
||||
msgid "Watching..."
|
||||
msgstr "En cours..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "tâche"
|
||||
@@ -925,7 +1084,10 @@ msgid "Synchronisation Status"
|
||||
msgstr "État de la synchronisation"
|
||||
|
||||
msgid "Encryption Options"
|
||||
msgstr "Options de cryptage"
|
||||
msgstr "Options de chiffrement"
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr "Options du Web Clipper"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Enlever cette étiquette de toutes les notes ?"
|
||||
@@ -1060,25 +1222,30 @@ msgid "Synchronisation is already in progress. State: %s"
|
||||
msgstr "La synchronisation est déjà en cours. État : %s"
|
||||
|
||||
msgid "Encrypted"
|
||||
msgstr "Crypté"
|
||||
msgstr "Chiffré"
|
||||
|
||||
msgid "Encrypted items cannot be modified"
|
||||
msgstr "Les objets cryptés ne peuvent être modifiés"
|
||||
msgstr "Les objets chiffrés ne peuvent être modifiés"
|
||||
|
||||
msgid "Conflicts"
|
||||
msgstr "Conflits"
|
||||
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Impossible de déplacer le carnet vers le carnet \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Un carnet avec ce titre existe déjà : \"%s\""
|
||||
msgstr "Impossible de déplacer le carnet à cet endroit"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Les carnets ne peuvent être nommés \"%s\" car c'est un nom réservé."
|
||||
|
||||
msgid "title"
|
||||
msgstr "titre"
|
||||
|
||||
msgid "updated date"
|
||||
msgstr "date de modification"
|
||||
|
||||
msgid "created date"
|
||||
msgstr "date de création"
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Sans titre"
|
||||
|
||||
@@ -1093,16 +1260,6 @@ msgstr "Impossible de copier la note vers le carnet \"%s\""
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Impossible de déplacer la note vers le carnet \"%s\""
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Éditeur de texte"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"L'éditeur de texte pour ouvrir et modifier les notes. Si aucun n'est "
|
||||
"spécifié, il sera détecté automatiquement."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Langue"
|
||||
|
||||
@@ -1149,11 +1306,14 @@ msgid "When creating a new note:"
|
||||
msgstr "Lors de la création d'une note :"
|
||||
|
||||
msgid "Show tray icon"
|
||||
msgstr "Afficher icône dans la zone de notifications"
|
||||
msgstr "Afficher l'icône dans la zone de notifications"
|
||||
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr "Note : Ne fonctionne pas dans tous les environnements de bureau."
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr "Démarrer minimisé dans la zone de notification"
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Niveau de zoom"
|
||||
|
||||
@@ -1161,10 +1321,11 @@ msgid "Editor font family"
|
||||
msgstr "Police de l'éditeur"
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Le nom de la police ne sera pas vérifié. Si incorrect ou vide une police "
|
||||
"Il faut que ce soit une police *monospace* ou cela ne fonctionnera pas "
|
||||
"correctement. Si la police est incorrecte ou non-spécifiée, une police "
|
||||
"monospace sera utilisée par défaut."
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1185,6 +1346,16 @@ msgstr "%d heure"
|
||||
msgid "%d hours"
|
||||
msgstr "%d heures"
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr "Commande de l'éditeur de texte"
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"La commande de l'éditeur de texte (peut inclure des options) pour ouvrir et "
|
||||
"modifier les notes. Si non-spécifiée, elle sera détectée automatiquement."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Montrer les options avancées"
|
||||
|
||||
@@ -1212,6 +1383,16 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud : URL WebDAV"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
"Attention : si vous changez cet emplacement, copiez-y tout le contenu avant "
|
||||
"de synchroniser, sinon tous les fichiers seront supprimés ! Consulter la FAQ "
|
||||
"pour plus de détails : %s"
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Nextcloud : Nom utilisateur"
|
||||
|
||||
@@ -1227,10 +1408,32 @@ msgstr "WebDAV : Nom utilisateur"
|
||||
msgid "WebDAV password"
|
||||
msgstr "WebDAV : Mot de passe"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr "Certificats TLS personnalisés"
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
"Liste séparée par des virgules contenant les chemins des répertoires "
|
||||
"contenants des certificats, ou les chemins de certificats individuels. Par "
|
||||
"exemple : /my/cert_dir, /other/custom.pem. Remarquez que si vous changez les "
|
||||
"paramètres TLS, vous devez enregistrer vos changements avant de cliquer sur "
|
||||
"\"Vérifier config synchronisation\"."
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr "Ignorer les erreurs de certificats TLS"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Option invalide: \"%s\". Les valeurs possibles sont : %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr "L'étiquette \"%s\" existe déjà. Veuillez choisir un autre nom."
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Fichier d'export Joplin"
|
||||
|
||||
@@ -1259,7 +1462,7 @@ msgid ""
|
||||
"This item is currently encrypted: %s \"%s\". Please wait for all items to be "
|
||||
"decrypted and try again."
|
||||
msgstr ""
|
||||
"Cet objet est crypté : %s \"%s\". Veuillez attendre que tout soit décrypté "
|
||||
"Cet objet est chiffré : %s \"%s\". Veuillez attendre que tout soit déchiffré "
|
||||
"et réessayez."
|
||||
|
||||
msgid "There is no data to export."
|
||||
@@ -1332,7 +1535,7 @@ msgid "Export Debug Report"
|
||||
msgstr "Exporter rapport de débogage"
|
||||
|
||||
msgid "Encryption Config"
|
||||
msgstr "Config cryptage"
|
||||
msgstr "Config chiffrement"
|
||||
|
||||
msgid "Configuration"
|
||||
msgstr "Configuration"
|
||||
@@ -1347,6 +1550,9 @@ msgstr "Déplacer %d notes vers carnet \"%s\" ?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Définir mot de passe de synchronisation."
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr "Enregistrer alarme"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Sélectionner date"
|
||||
|
||||
@@ -1356,12 +1562,38 @@ msgstr "Confirmer"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Annuler synchronisation"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Déchiffrement des objets : %d/%d"
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Nouvelles étiquettes :"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Entrez de nouvelles étiquettes ou sélectionnez de la liste"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
"Pour fonctionner correctement, l'appli a besoin des autorisations suivantes. "
|
||||
"Veuillez les activer dans les paramètres de votre téléphone, dans le menu "
|
||||
"Applications > Joplin > Autorisations"
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
"- Stockage : Pour attacher des fichiers aux notes et pour activer la "
|
||||
"synchronisation vers le système de fichier."
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
"- Appareil photo : Pour pouvoir prendre une photo et l'attacher à une note."
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr "- Position : Pour attacher à une note les coordonnées GPS."
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Site web de Joplin"
|
||||
|
||||
@@ -1426,6 +1658,9 @@ msgstr "Attacher une photo"
|
||||
msgid "Attach any file"
|
||||
msgstr "Attacher un fichier"
|
||||
|
||||
msgid "Share"
|
||||
msgstr "Partager"
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Convertir en note"
|
||||
|
||||
@@ -1465,12 +1700,15 @@ msgstr ""
|
||||
msgid "Welcome"
|
||||
msgstr "Bienvenue"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Un carnet avec ce titre existe déjà : \"%s\""
|
||||
|
||||
#~ msgid ""
|
||||
#~ "For more information about End-To-End Encryption (E2EE) and advices on "
|
||||
#~ "how to enable it please check the documentation"
|
||||
#~ msgstr ""
|
||||
#~ "Pour plus d'informations sur l'encryption de bout en bout, ainsi que des "
|
||||
#~ "conseils pour l'activer, veuillez consulter la documentation"
|
||||
#~ "Pour plus d'informations sur le chiffrement de bout en bout, ainsi que "
|
||||
#~ "des conseils pour l'activer, veuillez consulter la documentation"
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Recherches"
|
||||
|
@@ -455,10 +455,11 @@ msgstr "Iniciando sincronización..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Cancelando... Agarde."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> pode ser «add», «remove» ou «list» para asignar ou eliminar "
|
||||
"[tag] da [note] ou para listar as notas asociadas con [tag]. A orde «list» "
|
||||
@@ -619,6 +620,18 @@ msgstr "Cortar"
|
||||
msgid "Paste"
|
||||
msgstr "Pegar"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Buscar en todas as notas"
|
||||
|
||||
@@ -637,6 +650,9 @@ msgstr "Ferramentas"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Estado da sincronización"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Opcións de cifrado"
|
||||
|
||||
@@ -687,6 +703,67 @@ msgstr "Si"
|
||||
msgid "No"
|
||||
msgstr "Non"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Estado: %s."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Mostrar opcións avanzadas"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Comprobar a configuración da sincronización"
|
||||
|
||||
@@ -694,12 +771,15 @@ msgstr "Comprobar a configuración da sincronización"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "As notas e axustes gardáronse en: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gardar"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Gardar"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -808,6 +888,10 @@ msgstr "Separar cada etiqueta por unha coma."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Renomear caderno:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Renomear"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Estabelecer alarma:"
|
||||
|
||||
@@ -832,6 +916,13 @@ msgstr "Estabelecer un contrasinal"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Engadir ou eliminar etiquetas"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Copiar"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Cambiar entre notas e tarefas"
|
||||
|
||||
@@ -852,16 +943,52 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Este no é un caderno. Cree un, premendo en «Novo caderno»."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Abrir…"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Non foi posíbel gardar o caderno: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Gardar como…"
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Ligazón ou mensaxe incompatíbeis: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Esta nota non ten contido. Prema en «%s» para ir ao editor e modificar a "
|
||||
"nota."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Anexar un ficheiro"
|
||||
|
||||
@@ -871,13 +998,40 @@ msgstr "Etiquetas"
|
||||
msgid "Set alarm"
|
||||
msgstr "Estabelecer alarma"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
"Esta nota non ten contido. Prema en «%s» para ir ao editor e modificar a "
|
||||
"nota."
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Cancelando..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "tarefas pendentes"
|
||||
@@ -910,6 +1064,10 @@ msgstr "Estado da sincronización"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Opcións de cifrado"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Opcións xerais"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Desexa eliminar esta etiqueta de todas as notas?"
|
||||
|
||||
@@ -1054,14 +1212,22 @@ msgstr "Conflitos"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Non é posíbel mover a nota ao caderno «%s»"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Xa existe un caderno con ese título: «%s»"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Os cadernos non poden levar o nome «%s» porque é un título reservado."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Sen título"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Actualizado: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Creado: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Sen título"
|
||||
|
||||
@@ -1076,16 +1242,6 @@ msgstr "Non é posíbel copiar a nota ao caderno «%s»"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Non é posíbel mover a nota ao caderno «%s»"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Editor de texto"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor a usar para abrir unha nota. Se non se indica ningún tentará detectar "
|
||||
"automaticamente o editor predeterminado."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Idioma"
|
||||
|
||||
@@ -1138,15 +1294,19 @@ msgstr "Mostrar a icona na bandexa"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Porcentaxe de ampliación"
|
||||
|
||||
msgid "Editor font family"
|
||||
msgstr "Familia de tipos de letra do editor"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Non se comprobará o nome da fonte. Se é incorrecto ou está baleiro, "
|
||||
"estabelecerase por omisión un tipo de letra xenérico de largura única."
|
||||
@@ -1169,6 +1329,18 @@ msgstr "%d hora"
|
||||
msgid "%d hours"
|
||||
msgstr "%d horas"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Editor de texto"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Editor a usar para abrir unha nota. Se non se indica ningún tentará detectar "
|
||||
"automaticamente o editor predeterminado."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Mostrar opcións avanzadas"
|
||||
|
||||
@@ -1195,6 +1367,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "URL de Nextcloud WebDAV"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Usuario de Nextcloud"
|
||||
|
||||
@@ -1210,10 +1389,27 @@ msgstr "Usuario de WebDAV"
|
||||
msgid "WebDAV password"
|
||||
msgstr "Contrasinal do WebDAV"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Valor incorrecto de opción: «%s». Os valores posíbeis son: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Ficheiro de exportación do Joplin"
|
||||
|
||||
@@ -1328,6 +1524,10 @@ msgstr "Mover %d notas para o caderno \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Prema para estabelecer o contrasinal de descifrado."
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Estabelecer alarma"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Seleccionar data"
|
||||
|
||||
@@ -1337,12 +1537,32 @@ msgstr "Confirmar"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Cancelar sincronización"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Elementos obtidos: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Etiquetas novas:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Escriba etiquetas novas ou seleccione da lista"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Sitio web de Joplin"
|
||||
|
||||
@@ -1407,6 +1627,9 @@ msgstr "Anexar foto"
|
||||
msgid "Attach any file"
|
||||
msgstr "Adxuntar calquera ficheiro"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Converter para nota"
|
||||
|
||||
@@ -1443,3 +1666,6 @@ msgstr "Non ten cadernos actualmente. Cree un premendo no botón (+)."
|
||||
|
||||
msgid "Welcome"
|
||||
msgstr "Benvido/a"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Xa existe un caderno con ese título: «%s»"
|
||||
|
@@ -462,7 +462,7 @@ msgstr "Prekidam... Pričekaj."
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
@@ -625,6 +625,18 @@ msgstr "Izreži"
|
||||
msgid "Paste"
|
||||
msgstr "Zalijepi"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Pretraži u svim bilješkama"
|
||||
|
||||
@@ -643,6 +655,9 @@ msgstr "Alati"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Status sinkronizacije"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr ""
|
||||
|
||||
@@ -696,6 +711,67 @@ msgstr ""
|
||||
msgid "No"
|
||||
msgstr "N"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Stanje: \"%s\"."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Prikaži napredne opcije"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Prekini sinkronizaciju"
|
||||
@@ -704,12 +780,15 @@ msgstr "Prekini sinkronizaciju"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Bilješke i postavke su pohranjene u: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Spremi"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Spremi"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -807,6 +886,10 @@ msgstr "Odvoji oznake zarezom."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Preimenuj bilježnicu:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Preimenuj"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Postavi upozorenje:"
|
||||
|
||||
@@ -833,6 +916,13 @@ msgstr ""
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Dodaj ili makni oznake"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Kopiraj"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Zamijeni bilješku i zadatak"
|
||||
|
||||
@@ -852,17 +942,51 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Ovdje nema bilježnica. Stvori novu pritiskom na \"Nova bilježnica\"."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Bilježnicu nije moguće snimiti: %s"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save as..."
|
||||
msgstr "Spremi promjene"
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Nepodržana poveznica ili poruka: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Priloži datoteku"
|
||||
|
||||
@@ -872,12 +996,41 @@ msgstr "Oznake"
|
||||
msgid "Set alarm"
|
||||
msgstr "Postavi upozorenje"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Prekidam..."
|
||||
|
||||
#, fuzzy
|
||||
msgid "to-do"
|
||||
msgstr "Novi zadatak"
|
||||
@@ -911,6 +1064,10 @@ msgstr "Status Sinkronizacije"
|
||||
msgid "Encryption Options"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Opcije"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Makni ovu oznaku iz svih bilješki?"
|
||||
|
||||
@@ -1054,14 +1211,22 @@ msgstr "Sukobi"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Ne mogu premjestiti bilješku u bilježnicu %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Bilježnica s ovim naslovom već postoji: \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Naslov \"%s\" je rezerviran i ne može se koristiti."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Nenaslovljen"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Ažurirano: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Stvoreno: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Nenaslovljen"
|
||||
|
||||
@@ -1076,16 +1241,6 @@ msgstr "Ne mogu kopirati bilješku u bilježnicu %s"
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Ne mogu premjestiti bilješku u bilježnicu %s"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Uređivač teksta"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Program za uređivanje koji će biti korišten za uređivanje bilješki. Ako ni "
|
||||
"jedan nije odabran, pokušati će se sa default programom."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Jezik"
|
||||
|
||||
@@ -1143,6 +1298,9 @@ msgstr ""
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr ""
|
||||
|
||||
@@ -1150,8 +1308,8 @@ msgid "Editor font family"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1172,6 +1330,18 @@ msgstr "%d sat"
|
||||
msgid "%d hours"
|
||||
msgstr "%d sati"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Uređivač teksta"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Program za uređivanje koji će biti korišten za uređivanje bilješki. Ako ni "
|
||||
"jedan nije odabran, pokušati će se sa default programom."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Prikaži napredne opcije"
|
||||
|
||||
@@ -1196,6 +1366,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr ""
|
||||
|
||||
@@ -1211,10 +1388,27 @@ msgstr ""
|
||||
msgid "WebDAV password"
|
||||
msgstr ""
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Nevažeća vrijednost: \"%s\". Moguće vrijednosti su: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Evernote izvozne datoteke"
|
||||
@@ -1327,6 +1521,10 @@ msgstr "Premjesti %d bilješke u bilježnicu \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Postavi upozorenje"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Odaberi datum"
|
||||
|
||||
@@ -1336,12 +1534,32 @@ msgstr "Potvrdi"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Prekini sinkronizaciju"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Stvorene lokalne stavke: %d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr ""
|
||||
|
||||
@@ -1407,6 +1625,9 @@ msgstr "Priloži sliku"
|
||||
msgid "Attach any file"
|
||||
msgstr "Priloži datoteku"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Pretvori u bilješku"
|
||||
|
||||
@@ -1444,6 +1665,9 @@ msgstr "Trenutno nemaš nijednu bilježnicu. Stvori novu klikom na (+) gumb."
|
||||
msgid "Welcome"
|
||||
msgstr "Dobro došli"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Bilježnica s ovim naslovom već postoji: \"%s\""
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Pretraživanja"
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -414,7 +414,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
@@ -552,6 +552,18 @@ msgstr ""
|
||||
msgid "Paste"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr ""
|
||||
|
||||
@@ -570,6 +582,9 @@ msgstr ""
|
||||
msgid "Synchronisation status"
|
||||
msgstr ""
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr ""
|
||||
|
||||
@@ -620,6 +635,66 @@ msgstr ""
|
||||
msgid "No"
|
||||
msgstr ""
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Advanced options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr ""
|
||||
|
||||
@@ -627,12 +702,15 @@ msgstr ""
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -728,6 +806,9 @@ msgstr ""
|
||||
msgid "Rename notebook:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr ""
|
||||
|
||||
@@ -752,6 +833,13 @@ msgstr ""
|
||||
msgid "Add or remove tags"
|
||||
msgstr ""
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr ""
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr ""
|
||||
|
||||
@@ -771,16 +859,50 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr ""
|
||||
|
||||
@@ -791,9 +913,37 @@ msgid "Set alarm"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgid "In: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
msgid "Watching..."
|
||||
msgstr ""
|
||||
|
||||
msgid "to-do"
|
||||
@@ -827,6 +977,9 @@ msgstr ""
|
||||
msgid "Encryption Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr ""
|
||||
|
||||
@@ -963,11 +1116,16 @@ msgid "Cannot move notebook to this location"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgid "title"
|
||||
msgstr ""
|
||||
|
||||
msgid "updated date"
|
||||
msgstr ""
|
||||
|
||||
msgid "created date"
|
||||
msgstr ""
|
||||
|
||||
msgid "Untitled"
|
||||
@@ -984,14 +1142,6 @@ msgstr ""
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr ""
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
|
||||
msgid "Language"
|
||||
msgstr ""
|
||||
|
||||
@@ -1043,6 +1193,9 @@ msgstr ""
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr ""
|
||||
|
||||
@@ -1050,8 +1203,8 @@ msgid "Editor font family"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1072,6 +1225,14 @@ msgstr ""
|
||||
msgid "%d hours"
|
||||
msgstr ""
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr ""
|
||||
|
||||
@@ -1094,6 +1255,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr ""
|
||||
|
||||
@@ -1109,10 +1277,27 @@ msgstr ""
|
||||
msgid "WebDAV password"
|
||||
msgstr ""
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr ""
|
||||
|
||||
@@ -1222,6 +1407,9 @@ msgstr ""
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr ""
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select date"
|
||||
msgstr ""
|
||||
|
||||
@@ -1231,12 +1419,32 @@ msgstr ""
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr ""
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr ""
|
||||
|
||||
@@ -1300,6 +1508,9 @@ msgstr ""
|
||||
msgid "Attach any file"
|
||||
msgstr ""
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr ""
|
||||
|
||||
|
1662
CliClient/locales/ko.po
Normal file
1662
CliClient/locales/ko.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -459,10 +459,11 @@ msgstr "Synchronisatie starten..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Annuleren.. Even geduld."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> kan \"add\", \"remove\" of \"list\" zijn om een [tag] toe te "
|
||||
"voegen aan een [note] of te verwijderen, of om alle notities geassocieerd "
|
||||
@@ -629,6 +630,18 @@ msgstr "Knip"
|
||||
msgid "Paste"
|
||||
msgstr "Plak"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Zoek in alle notities"
|
||||
|
||||
@@ -647,6 +660,9 @@ msgstr "Tools"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Synchronisatie status"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Versleutelopties"
|
||||
|
||||
@@ -699,6 +715,67 @@ msgstr ""
|
||||
msgid "No"
|
||||
msgstr "N"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Status: \"%s\""
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Toon geavanceerde opties"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Annuleer synchronisatie"
|
||||
@@ -707,12 +784,15 @@ msgstr "Annuleer synchronisatie"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Notities en instellingen zijn opgeslaan in %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Sla op"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Sla op"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -822,6 +902,10 @@ msgstr "Scheid iedere tag met een komma."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Hernoem notitieboek:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Hernoem"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Stel melding in:"
|
||||
|
||||
@@ -847,6 +931,13 @@ msgstr "Stel wachtwoord in"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Voeg tag toe of verwijder tag"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Kopieer"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Wissel tussen notitie en to-do type"
|
||||
|
||||
@@ -868,17 +959,51 @@ msgstr ""
|
||||
"U heeft momenteel geen notitieboek. Maak een notitieboek door op \"Nieuw "
|
||||
"notitieboek\" te klikken."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Het notitieboek kon niet opgeslaan worden: %s"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save as..."
|
||||
msgstr "Sla wijzigingen op"
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Link of bericht \"%s\" wordt niet ondersteund"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Voeg bestand toe"
|
||||
|
||||
@@ -888,12 +1013,41 @@ msgstr "Tags"
|
||||
msgid "Set alarm"
|
||||
msgstr "Zet melding"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Annuleren..."
|
||||
|
||||
#, fuzzy
|
||||
msgid "to-do"
|
||||
msgstr "Nieuwe to-do"
|
||||
@@ -927,6 +1081,10 @@ msgstr "Synchronisatie status"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Versleutelopties"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Algemene opties"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Deze tag verwijderen van alle notities?"
|
||||
|
||||
@@ -1072,16 +1230,24 @@ msgstr "Conflicten"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Kan notitie niet naar notitieboek \"%s\" verplaatsen."
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Er bestaat al een notitieboek met \"%s\" als titel"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
"Notitieboeken kunnen niet \"%s\" genoemd worden, dit is een gereserveerd "
|
||||
"woord."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Untitled"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Bijgewerkt: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Aangemaakt: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Untitled"
|
||||
|
||||
@@ -1096,17 +1262,6 @@ msgstr "Kan notitie niet naar notitieboek \"%s\" kopiëren."
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Kan notitie niet naar notitieboek \"%s\" verplaatsen."
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Tekst editor"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"De editor die zal gebruikt worden bij het openen van een notitie. Als er "
|
||||
"geen meegegeven wordt, zal het programma de standaard editor proberen te "
|
||||
"detecteren. "
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Taal"
|
||||
|
||||
@@ -1163,6 +1318,9 @@ msgstr ""
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr ""
|
||||
|
||||
@@ -1170,8 +1328,8 @@ msgid "Editor font family"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
|
||||
msgid "Automatically update the application"
|
||||
@@ -1192,6 +1350,19 @@ msgstr "%d uur"
|
||||
msgid "%d hours"
|
||||
msgstr "%d uren"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Tekst editor"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"De editor die zal gebruikt worden bij het openen van een notitie. Als er "
|
||||
"geen meegegeven wordt, zal het programma de standaard editor proberen te "
|
||||
"detecteren. "
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Toon geavanceerde opties"
|
||||
|
||||
@@ -1216,6 +1387,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr ""
|
||||
|
||||
@@ -1233,10 +1411,27 @@ msgstr ""
|
||||
msgid "WebDAV password"
|
||||
msgstr "Stel wachtwoord in"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Ongeldige optie: \"%s\". Geldige waarden zijn: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Exporteer Evernote bestanden"
|
||||
@@ -1353,6 +1548,10 @@ msgstr "Verplaats %d notities naar notitieboek \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Klik om het decryptie wachtwoord in te stellen"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Zet melding"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Selecteer datum"
|
||||
|
||||
@@ -1362,12 +1561,32 @@ msgstr "Bevestig"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Annuleer synchronisatie"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Opgehaalde items: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr ""
|
||||
|
||||
@@ -1432,6 +1651,9 @@ msgstr "Voeg foto toe"
|
||||
msgid "Attach any file"
|
||||
msgstr "Voeg bestand toe"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Converteer naar notitie"
|
||||
|
||||
@@ -1471,6 +1693,9 @@ msgstr ""
|
||||
msgid "Welcome"
|
||||
msgstr "Welkom"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Er bestaat al een notitieboek met \"%s\" als titel"
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Zoekopdrachten"
|
||||
|
||||
|
1700
CliClient/locales/nl_NL.po
Normal file
1700
CliClient/locales/nl_NL.po
Normal file
File diff suppressed because it is too large
Load Diff
1680
CliClient/locales/no.po
Normal file
1680
CliClient/locales/no.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -246,9 +246,8 @@ msgstr ""
|
||||
"Use as setas e a Page Up/Page Down para rolar as listas e áreas de texto "
|
||||
"(incluindo este console)."
|
||||
|
||||
#, fuzzy
|
||||
msgid "To maximise/minimise the console, press \"tc\"."
|
||||
msgstr "Para maximizar / minimizar o console, pressione \"TC\"."
|
||||
msgstr "Para maximizar / minimizar o console, pressione \"tc\"."
|
||||
|
||||
msgid "To enter command line mode, press \":\""
|
||||
msgstr "Para entrar no modo de linha de comando, pressione \":\""
|
||||
@@ -363,12 +362,11 @@ msgstr "Exclui o caderno informado."
|
||||
msgid "Deletes the notebook without asking for confirmation."
|
||||
msgstr "Exclui o caderno sem pedir confirmação."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Delete notebook? All notes and sub-notebooks within this notebook will also "
|
||||
"be deleted."
|
||||
msgstr ""
|
||||
"Excluir o caderno? Todas as notas deste caderno notebook também serão "
|
||||
"Excluir o caderno? Todas as notas e sub-cadernos dentro deste também serão "
|
||||
"excluídas."
|
||||
|
||||
msgid "Deletes the notes matching <note-pattern>."
|
||||
@@ -459,10 +457,11 @@ msgstr "Iniciando sincronização..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Cancelando... Aguarde."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> pode ser \"add\", \"remove\" ou \"list\" para atribuir ou "
|
||||
"remover [tag] de [nota], ou para listar as notas associadas a [tag]. O "
|
||||
@@ -626,6 +625,18 @@ msgstr "Cortar"
|
||||
msgid "Paste"
|
||||
msgstr "Colar"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr "Negrito"
|
||||
|
||||
msgid "Italic"
|
||||
msgstr "Itálico"
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr "Inserir Data e Hora"
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr "Editar com editor externo"
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Pesquisar em todas as notas"
|
||||
|
||||
@@ -633,7 +644,7 @@ msgid "View"
|
||||
msgstr "Visualizar"
|
||||
|
||||
msgid "Toggle sidebar"
|
||||
msgstr ""
|
||||
msgstr "Alternar barra lateral"
|
||||
|
||||
msgid "Toggle editor layout"
|
||||
msgstr "Alternar layout do editor"
|
||||
@@ -644,6 +655,9 @@ msgstr "Ferramentas"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Status de sincronização"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr "Opções do Web clipper"
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Opções de Encriptação"
|
||||
|
||||
@@ -694,6 +708,73 @@ msgstr "Sim"
|
||||
msgid "No"
|
||||
msgstr "Não"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
"O serviço de web clipper está habilitado e configurado para auto-start."
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr "Status: Iniciado, na porta %d"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Status: \"%s\"."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr "Desabilitar serviço Web Clipper"
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr "O serviço de web clipper não está habilitado."
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr "Habilitar serviço Web Clipper"
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
"O serviço de Web Clipper do Joplin permite salvar páginas da web e "
|
||||
"screenshots do seu browser, no Joplin."
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr "Para usar o web clipper, você precisa fazer o seguinte:"
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr "Passo 1: Habilitar o serviço do clipper"
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
"Este serviço permite a extensão do browser se comunicat com o Joplin. Quando "
|
||||
"habilitar, talvez seu firewall peça que você conceda permissão ao Joplin "
|
||||
"para escutar determinada porta."
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr "Passo 2: Instalar a extensão"
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr "Baixe e instale a extensão relevante para seu browser:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Mostrar opções avançadas"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Verificar a configuração da sincronização"
|
||||
|
||||
@@ -701,12 +782,15 @@ msgstr "Verificar a configuração da sincronização"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Notas e configurações estão armazenadas em: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Salvar"
|
||||
msgid "Apply"
|
||||
msgstr "Aplicar"
|
||||
|
||||
msgid "Submit"
|
||||
msgstr "Enviar"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Salvar"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -818,6 +902,9 @@ msgstr "Separe cada tag por vírgula."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Renomear caderno:"
|
||||
|
||||
msgid "Rename tag:"
|
||||
msgstr "Renomear tag:"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Definir alarme:"
|
||||
|
||||
@@ -842,12 +929,18 @@ msgstr "Configurar a senha"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Adicionar ou remover tags"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr "Duplicar"
|
||||
|
||||
#, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "%s - Copiar"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Alternar entre os tipos Nota e Tarefa"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Copy Markdown link"
|
||||
msgstr "Markdown"
|
||||
msgstr "Copiar link de Markdown"
|
||||
|
||||
msgid "Delete"
|
||||
msgstr "Excluir"
|
||||
@@ -862,16 +955,52 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Atualmente, não há cadernos. Crie um, clicando em \"Novo caderno\"."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Abrir..."
|
||||
|
||||
#, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Este arquivo não pôde ser aberto: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Salvar como..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr "Copiar caminho para a área de transferência"
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr "Copiar endereço do link"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Link ou mensagem não suportada: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Esta nota não possui conteúdo. Clique em \"%s\" para alternar para o editor, "
|
||||
"e edite a nota."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr "texto forte"
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr "texto enfatizado"
|
||||
|
||||
msgid "List item"
|
||||
msgstr "Listar item"
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr "Inserir Hiperlink"
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Anexar arquivo"
|
||||
|
||||
@@ -882,12 +1011,38 @@ msgid "Set alarm"
|
||||
msgstr "Definir alarme"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgid "In: %s"
|
||||
msgstr "Em: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
"Esta nota não possui conteúdo. Clique em \"%s\" para alternar para o editor, "
|
||||
"e edite a nota."
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr "Hiperlink"
|
||||
|
||||
msgid "Code"
|
||||
msgstr "Código"
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr "Lista numerada"
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr "Lista com bullets"
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr "Checkbox"
|
||||
|
||||
msgid "Heading"
|
||||
msgstr "Cabeçalho"
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr "Régua horizontal"
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr "Clique para encerrar edição externa"
|
||||
|
||||
msgid "Watching..."
|
||||
msgstr "Verificando..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "tarefa"
|
||||
@@ -920,6 +1075,9 @@ msgstr "Status de sincronização"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Opções de Encriptação"
|
||||
|
||||
msgid "Clipper Options"
|
||||
msgstr "Opções do clipper"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Remover esta tag de todas as notas?"
|
||||
|
||||
@@ -1062,19 +1220,23 @@ msgstr "Itens encriptados não podem ser modificados"
|
||||
msgid "Conflicts"
|
||||
msgstr "Conflitos"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Não é possível mover a nota para o caderno \"%s\""
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Já existe caderno com este título: \"%s\""
|
||||
msgstr "Não é possível mover a nota para este local"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr ""
|
||||
"Os cadernos não podem ser nomeados como\"%s\", que é um título reservado."
|
||||
|
||||
msgid "title"
|
||||
msgstr "título"
|
||||
|
||||
msgid "updated date"
|
||||
msgstr "data de ataualização"
|
||||
|
||||
msgid "created date"
|
||||
msgstr "data de criação"
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Sem título"
|
||||
|
||||
@@ -1089,16 +1251,6 @@ msgstr "Não é possível copiar a nota para o caderno \"%s\""
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Não é possível mover a nota para o caderno \"%s\""
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Editor de texto"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"O editor que será usado para abrir uma nota. Se nenhum for indicado, ele "
|
||||
"tentará detectar automaticamente o editor padrão."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Idioma"
|
||||
|
||||
@@ -1120,9 +1272,8 @@ msgstr "Dark"
|
||||
msgid "Uncompleted to-dos on top"
|
||||
msgstr "Mostrar tarefas incompletas no topo"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Show completed to-dos"
|
||||
msgstr "Mostrar tarefas incompletas no topo"
|
||||
msgstr "Mostrar tarefas completas"
|
||||
|
||||
msgid "Sort notes by"
|
||||
msgstr "Ordenar notas por"
|
||||
@@ -1149,6 +1300,9 @@ msgid "Show tray icon"
|
||||
msgstr "Exibir tray icon"
|
||||
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr "Nota: não funciona em todos os ambientes de desktop"
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
@@ -1158,11 +1312,11 @@ msgid "Editor font family"
|
||||
msgstr "Família de fontes do editor"
|
||||
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"O nomes da fonte não será verificado. Se estiver incorreto ou vazio, será "
|
||||
"usado por default uma fonte genérica monospace."
|
||||
"Deve ser uma fonte *monospace\" ou não vai funcionar direito. Se a fonte "
|
||||
"estiver incorreta ou vazia, será usada uma fonte genérica monospace default."
|
||||
|
||||
msgid "Automatically update the application"
|
||||
msgstr "Atualizar automaticamente o aplicativo"
|
||||
@@ -1182,6 +1336,17 @@ msgstr "%d hora"
|
||||
msgid "%d hours"
|
||||
msgstr "%d horas"
|
||||
|
||||
msgid "Text editor command"
|
||||
msgstr "Comando do editor de texto"
|
||||
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"O comando do editor (pode incluir argumentos) que será usado para abrir uma "
|
||||
"nota. Se nenhum for indicado, ele tentará detectar automaticamente o editor "
|
||||
"padrão."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Mostrar opções avançadas"
|
||||
|
||||
@@ -1208,6 +1373,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Usuário da Nextcloud"
|
||||
|
||||
@@ -1223,10 +1395,32 @@ msgstr "Usuário do WebDAV"
|
||||
msgid "WebDAV password"
|
||||
msgstr "Senha do WebDAV"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr "Certificados TLS customizados"
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
"Lista de caminhos para diretórios, separados por vírgula, de onde carregar "
|
||||
"os certificados, ou caminhos para arquivos cert. Por exemplo, /my/cert_dir, /"
|
||||
"other/custom.pem. Note que se você fizer mudanças nas configurações de TLS, "
|
||||
"você tem que salvar as mudanças antes de clicar em \"Verificar a "
|
||||
"configuração da sincronização\""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr "Ignorar erros de certificados TLS"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Valor da opção inválida: \"%s\". Os valores possíveis são: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Arquivo de Exportação do Joplin"
|
||||
|
||||
@@ -1342,6 +1536,9 @@ msgstr "Mover %d notas para o caderno \"%s\"?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Pressione para configurar a senha de decriptação."
|
||||
|
||||
msgid "Save alarm"
|
||||
msgstr "Salvar alarme"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Selecionar data"
|
||||
|
||||
@@ -1351,12 +1548,39 @@ msgstr "Confirmar"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Cancelar sincronização"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Decriptando itens: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr "Novas tags:"
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr "Digite novsa tags, ou selecione da lista"
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
"Para funcionar corretamente, o app precisa das seguintes permissões. Por "
|
||||
"favor, habilite-as nas configurações do seu telefone, em Apps >Joplin > "
|
||||
"Permissões"
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
"- Armazenamento: para permitir anexar arquivos a notas, e para permitir a "
|
||||
"sincronização do sistema de arquivos "
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr "- Câmera: para permitir tirar fotos e anexar a uma nota."
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
"- Localização: para permitir anexar informações de geo-localização a uma "
|
||||
"nota."
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Site do Joplin"
|
||||
|
||||
@@ -1404,11 +1628,11 @@ msgstr "Descartar alterações"
|
||||
|
||||
#, javascript-format
|
||||
msgid "No item with ID %s"
|
||||
msgstr ""
|
||||
msgstr "Nenhum item com ID %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid "The Joplin mobile app does not currently support this type of link: %s"
|
||||
msgstr ""
|
||||
msgstr "O app mobile do Joplin não suporta, atualmente, esse tipo de link: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported image type: %s"
|
||||
@@ -1420,6 +1644,9 @@ msgstr "Anexar foto"
|
||||
msgid "Attach any file"
|
||||
msgstr "Anexar qualquer arquivo"
|
||||
|
||||
msgid "Share"
|
||||
msgstr "Compartilhar"
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Converter para nota"
|
||||
|
||||
@@ -1457,6 +1684,9 @@ msgstr "Você não possui cadernos. Crie um clicando no botão (+)."
|
||||
msgid "Welcome"
|
||||
msgstr "Bem-vindo"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Já existe caderno com este título: \"%s\""
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Pesquisas"
|
||||
|
||||
|
1567
CliClient/locales/ro.po
Normal file
1567
CliClient/locales/ro.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -459,10 +459,11 @@ msgstr "Начало синхронизации..."
|
||||
msgid "Cancelling... Please wait."
|
||||
msgstr "Отмена... Пожалуйста, ожидайте."
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"<tag-command> can be \"add\", \"remove\" or \"list\" to assign or remove "
|
||||
"[tag] from [note], or to list the notes associated with [tag]. The command "
|
||||
"`tag list` can be used to list all the tags."
|
||||
"`tag list` can be used to list all the tags (use -l for long option)."
|
||||
msgstr ""
|
||||
"<tag-command> может быть «add», «remove» или «list», чтобы назначить или "
|
||||
"убрать [tag] с [note], или чтобы вывести список заметок, ассоциированых с "
|
||||
@@ -626,6 +627,18 @@ msgstr "Вырезать"
|
||||
msgid "Paste"
|
||||
msgstr "Вставить"
|
||||
|
||||
msgid "Bold"
|
||||
msgstr ""
|
||||
|
||||
msgid "Italic"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Date Time"
|
||||
msgstr ""
|
||||
|
||||
msgid "Edit in external editor"
|
||||
msgstr ""
|
||||
|
||||
msgid "Search in all the notes"
|
||||
msgstr "Поиск во всех заметках"
|
||||
|
||||
@@ -644,6 +657,9 @@ msgstr "Инструменты"
|
||||
msgid "Synchronisation status"
|
||||
msgstr "Статус синхронизации"
|
||||
|
||||
msgid "Web clipper options"
|
||||
msgstr ""
|
||||
|
||||
msgid "Encryption options"
|
||||
msgstr "Настройки шифрования"
|
||||
|
||||
@@ -694,6 +710,67 @@ msgstr "Да"
|
||||
msgid "No"
|
||||
msgstr "Нет"
|
||||
|
||||
msgid "Token has been copied to the clipboard!"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is enabled and set to auto-start."
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Status: Started on port %d"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Status: %s"
|
||||
msgstr "Статус: «%s»."
|
||||
|
||||
msgid "Disable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid "The web clipper service is not enabled."
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable Web Clipper Service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Joplin Web Clipper allows saving web pages and screenshots from your browser "
|
||||
"to Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "In order to use the web clipper, you need to do the following:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 1: Enable the clipper service"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This service allows the browser extension to communicate with Joplin. When "
|
||||
"enabling it your firewall may ask you to give permission to Joplin to listen "
|
||||
"to a particular port."
|
||||
msgstr ""
|
||||
|
||||
msgid "Step 2: Install the extension"
|
||||
msgstr ""
|
||||
|
||||
msgid "Download and install the relevant extension for your browser:"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Advanced options"
|
||||
msgstr "Показывать расширенные настройки"
|
||||
|
||||
msgid "Authorisation token:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy token"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This authorisation token is only needed to allow third-party applications to "
|
||||
"access Joplin."
|
||||
msgstr ""
|
||||
|
||||
msgid "Check synchronisation configuration"
|
||||
msgstr "Проверить настройки синхронизации"
|
||||
|
||||
@@ -701,12 +778,15 @@ msgstr "Проверить настройки синхронизации"
|
||||
msgid "Notes and settings are stored in: %s"
|
||||
msgstr "Заметки и настройки сохранены в: %s"
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Сохранить"
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
|
||||
msgid "Submit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Save"
|
||||
msgstr "Сохранить"
|
||||
|
||||
msgid ""
|
||||
"Disabling encryption means *all* your notes and attachments are going to be "
|
||||
"re-synchronised and sent unencrypted to the sync target. Do you wish to "
|
||||
@@ -817,6 +897,10 @@ msgstr "Каждый тег отделяется запятой."
|
||||
msgid "Rename notebook:"
|
||||
msgstr "Переименовать блокнот:"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Rename tag:"
|
||||
msgstr "Переименовать"
|
||||
|
||||
msgid "Set alarm:"
|
||||
msgstr "Установить напоминание:"
|
||||
|
||||
@@ -842,6 +926,13 @@ msgstr "Установить пароль"
|
||||
msgid "Add or remove tags"
|
||||
msgstr "Добавить или удалить теги"
|
||||
|
||||
msgid "Duplicate"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "%s - Copy"
|
||||
msgstr "Копировать"
|
||||
|
||||
msgid "Switch between note and to-do type"
|
||||
msgstr "Переключить тип между заметкой и задачей"
|
||||
|
||||
@@ -862,16 +953,52 @@ msgid ""
|
||||
"There is currently no notebook. Create one by clicking on \"New notebook\"."
|
||||
msgstr "Сейчас здесь нет блокнотов. Создайте новый нажав «Новый блокнот»."
|
||||
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
msgid "Open..."
|
||||
msgstr "Открыть..."
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "This file could not be opened: %s"
|
||||
msgstr "Не удалось сохранить блокнот: %s"
|
||||
|
||||
msgid "Save as..."
|
||||
msgstr "Сохранить как..."
|
||||
|
||||
msgid "Copy path to clipboard"
|
||||
msgstr ""
|
||||
|
||||
msgid "Copy Link Address"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Unsupported link or message: %s"
|
||||
msgstr "Неподдерживаемая ссыка или сообщение: %s"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
msgstr ""
|
||||
"Заметка пуста. Нажмите на «%s», чтобы переключиться в редактор и "
|
||||
"отредактировать её."
|
||||
|
||||
msgid "strong text"
|
||||
msgstr ""
|
||||
|
||||
msgid "emphasized text"
|
||||
msgstr ""
|
||||
|
||||
msgid "List item"
|
||||
msgstr ""
|
||||
|
||||
msgid "Insert Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Attach file"
|
||||
msgstr "Прикрепить файл"
|
||||
|
||||
@@ -881,13 +1008,40 @@ msgstr "Теги"
|
||||
msgid "Set alarm"
|
||||
msgstr "Установить напоминание"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"This note has no content. Click on \"%s\" to toggle the editor and edit the "
|
||||
"note."
|
||||
#, fuzzy, javascript-format
|
||||
msgid "In: %s"
|
||||
msgstr "%s: %s"
|
||||
|
||||
msgid "Note properties"
|
||||
msgstr ""
|
||||
"Заметка пуста. Нажмите на «%s», чтобы переключиться в редактор и "
|
||||
"отредактировать её."
|
||||
|
||||
msgid "Hyperlink"
|
||||
msgstr ""
|
||||
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
|
||||
msgid "Numbered List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bulleted List"
|
||||
msgstr ""
|
||||
|
||||
msgid "Checkbox"
|
||||
msgstr ""
|
||||
|
||||
msgid "Heading"
|
||||
msgstr ""
|
||||
|
||||
msgid "Horizontal Rule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Click to stop external editing"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Watching..."
|
||||
msgstr "Отмена..."
|
||||
|
||||
msgid "to-do"
|
||||
msgstr "задача"
|
||||
@@ -920,6 +1074,10 @@ msgstr "Статус синхронизации"
|
||||
msgid "Encryption Options"
|
||||
msgstr "Настройки шифрования"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Clipper Options"
|
||||
msgstr "Основные настройки"
|
||||
|
||||
msgid "Remove this tag from all the notes?"
|
||||
msgstr "Убрать этот тег со всех заметок?"
|
||||
|
||||
@@ -1064,14 +1222,22 @@ msgstr "Конфликты"
|
||||
msgid "Cannot move notebook to this location"
|
||||
msgstr "Не удалось переместить заметку в блокнот «%s»"
|
||||
|
||||
#, javascript-format
|
||||
msgid "A notebook with this title already exists: \"%s\""
|
||||
msgstr "Блокнот с таким названием уже существует: «%s»"
|
||||
|
||||
#, javascript-format
|
||||
msgid "Notebooks cannot be named \"%s\", which is a reserved title."
|
||||
msgstr "Блокнот не может быть назван «%s», это зарезервированное название."
|
||||
|
||||
#, fuzzy
|
||||
msgid "title"
|
||||
msgstr "Без имени"
|
||||
|
||||
#, fuzzy
|
||||
msgid "updated date"
|
||||
msgstr "Обновлено: %d."
|
||||
|
||||
#, fuzzy
|
||||
msgid "created date"
|
||||
msgstr "Создано: %d."
|
||||
|
||||
msgid "Untitled"
|
||||
msgstr "Без имени"
|
||||
|
||||
@@ -1086,16 +1252,6 @@ msgstr "Не удалось скопировать заметку в блокн
|
||||
msgid "Cannot move note to \"%s\" notebook"
|
||||
msgstr "Не удалось переместить заметку в блокнот «%s»"
|
||||
|
||||
msgid "Text editor"
|
||||
msgstr "Текстовый редактор"
|
||||
|
||||
msgid ""
|
||||
"The editor that will be used to open a note. If none is provided it will try "
|
||||
"to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Редактор, в котором будут открываться заметки. Если не задан, будет "
|
||||
"произведена попытка автоматического определения редактора по умолчанию."
|
||||
|
||||
msgid "Language"
|
||||
msgstr "Язык"
|
||||
|
||||
@@ -1148,15 +1304,19 @@ msgstr "Показывать иконку в панели задач"
|
||||
msgid "Note: Does not work in all desktop environments."
|
||||
msgstr ""
|
||||
|
||||
msgid "Start application minimised in the tray icon"
|
||||
msgstr ""
|
||||
|
||||
msgid "Global zoom percentage"
|
||||
msgstr "Глобальный масштаб в процентах"
|
||||
|
||||
msgid "Editor font family"
|
||||
msgstr "Семейство шрифтов редактора"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The font name will not be checked. If incorrect or empty, it will default to "
|
||||
"a generic monospace font."
|
||||
"This must be *monospace* font or it will not work properly. If the font is "
|
||||
"incorrect or empty, it will default to a generic monospace font."
|
||||
msgstr ""
|
||||
"Название шрифта не проверяется. Если оно указано некорректно или не задано, "
|
||||
"будет использоваться стандартный моноширинный шрифт."
|
||||
@@ -1179,6 +1339,18 @@ msgstr "%d час"
|
||||
msgid "%d hours"
|
||||
msgstr "%d часов"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Text editor command"
|
||||
msgstr "Текстовый редактор"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"The editor command (may include arguments) that will be used to open a note. "
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Редактор, в котором будут открываться заметки. Если не задан, будет "
|
||||
"произведена попытка автоматического определения редактора по умолчанию."
|
||||
|
||||
msgid "Show advanced options"
|
||||
msgstr "Показывать расширенные настройки"
|
||||
|
||||
@@ -1205,6 +1377,13 @@ msgstr ""
|
||||
msgid "Nextcloud WebDAV URL"
|
||||
msgstr "Nextcloud WebDAV URL"
|
||||
|
||||
#, javascript-format
|
||||
msgid ""
|
||||
"Attention: If you change this location, make sure you copy all your content "
|
||||
"to it before syncing, otherwise all files will be removed! See the FAQ for "
|
||||
"more details: %s"
|
||||
msgstr ""
|
||||
|
||||
msgid "Nextcloud username"
|
||||
msgstr "Имя пользователя Nextcloud"
|
||||
|
||||
@@ -1220,10 +1399,27 @@ msgstr "Имя пользователя WebDAV"
|
||||
msgid "WebDAV password"
|
||||
msgstr "Пароль WebDAV"
|
||||
|
||||
msgid "Custom TLS certificates"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Comma-separated list of paths to directories to load the certificates from, "
|
||||
"or path to individual cert files. For example: /my/cert_dir, /other/custom."
|
||||
"pem. Note that if you make changes to the TLS settings, you must save your "
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ignore TLS certificate errors"
|
||||
msgstr ""
|
||||
|
||||
#, javascript-format
|
||||
msgid "Invalid option value: \"%s\". Possible values are: %s."
|
||||
msgstr "Неверное значение параметра: «%s». Доступные значения: %s."
|
||||
|
||||
#, javascript-format
|
||||
msgid "The tag \"%s\" already exists. Please choose a different name."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin Export File"
|
||||
msgstr "Файл экспорта Joplin"
|
||||
|
||||
@@ -1339,6 +1535,10 @@ msgstr "Переместить %d заметок в блокнот «%s»?"
|
||||
msgid "Press to set the decryption password."
|
||||
msgstr "Нажмите, чтобы установить пароль для расшифровки."
|
||||
|
||||
#, fuzzy
|
||||
msgid "Save alarm"
|
||||
msgstr "Установить напоминание"
|
||||
|
||||
msgid "Select date"
|
||||
msgstr "Выбрать дату"
|
||||
|
||||
@@ -1348,12 +1548,32 @@ msgstr "Подтвердить"
|
||||
msgid "Cancel synchronisation"
|
||||
msgstr "Отменить синхронизацию"
|
||||
|
||||
#, fuzzy, javascript-format
|
||||
msgid "Decrypting items: %d/%d"
|
||||
msgstr "Получено элементов: %d/%d."
|
||||
|
||||
msgid "New tags:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Type new tags or select from list"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"To work correctly, the app needs the following permissions. Please enable "
|
||||
"them in your phone settings, in Apps > Joplin > Permissions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"- Storage: to allow attaching files to notes and to enable filesystem "
|
||||
"synchronisation."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Camera: to allow taking a picture and attaching it to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "- Location: to allow attaching geo-location information to a note."
|
||||
msgstr ""
|
||||
|
||||
msgid "Joplin website"
|
||||
msgstr "Сайт Joplin"
|
||||
|
||||
@@ -1418,6 +1638,9 @@ msgstr "Прикрепить фото"
|
||||
msgid "Attach any file"
|
||||
msgstr "Прикрепить любой файл"
|
||||
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
msgid "Convert to note"
|
||||
msgstr "Преобразовать в заметку"
|
||||
|
||||
@@ -1455,6 +1678,9 @@ msgstr "У вас сейчас нет блокнота. Создайте его
|
||||
msgid "Welcome"
|
||||
msgstr "Добро пожаловать"
|
||||
|
||||
#~ msgid "A notebook with this title already exists: \"%s\""
|
||||
#~ msgstr "Блокнот с таким названием уже существует: «%s»"
|
||||
|
||||
#~ msgid "Searches"
|
||||
#~ msgstr "Запросы"
|
||||
|
||||
|
1688
CliClient/locales/sl_SI.po
Normal file
1688
CliClient/locales/sl_SI.po
Normal file
File diff suppressed because it is too large
Load Diff
1704
CliClient/locales/sv.po
Normal file
1704
CliClient/locales/sv.po
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1620
CliClient/locales/zh_TW.po
Normal file
1620
CliClient/locales/zh_TW.po
Normal file
File diff suppressed because it is too large
Load Diff
2489
CliClient/package-lock.json
generated
2489
CliClient/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -19,7 +19,7 @@
|
||||
],
|
||||
"owner": "Laurent Cozic"
|
||||
},
|
||||
"version": "1.0.107",
|
||||
"version": "1.0.115",
|
||||
"bin": {
|
||||
"joplin": "./main.js"
|
||||
},
|
||||
@@ -31,13 +31,20 @@
|
||||
"async-mutex": "^0.1.3",
|
||||
"base-64": "^0.1.0",
|
||||
"compare-version": "^0.1.2",
|
||||
"es6-promise-pool": "^2.5.0",
|
||||
"follow-redirects": "^1.2.4",
|
||||
"form-data": "^2.1.4",
|
||||
"fs-extra": "^5.0.0",
|
||||
"html-entities": "^1.2.1",
|
||||
"html-minifier": "^3.5.15",
|
||||
"image-data-uri": "^2.0.0",
|
||||
"image-type": "^3.0.0",
|
||||
"joplin-turndown": "^4.0.9",
|
||||
"joplin-turndown-plugin-gfm": "^1.0.7",
|
||||
"jssha": "^2.3.0",
|
||||
"levenshtein": "^1.0.5",
|
||||
"lodash": "^4.17.4",
|
||||
"markdown-it": "^8.4.2",
|
||||
"md5": "^2.2.1",
|
||||
"mime": "^2.0.3",
|
||||
"moment": "^2.18.1",
|
||||
@@ -47,15 +54,17 @@
|
||||
"promise": "^7.1.1",
|
||||
"proper-lockfile": "^2.0.1",
|
||||
"query-string": "4.3.4",
|
||||
"read-chunk": "^2.1.0",
|
||||
"redux": "^3.7.2",
|
||||
"sax": "^1.2.2",
|
||||
"server-destroy": "^1.0.1",
|
||||
"sharp": "^0.18.4",
|
||||
"sharp": "^0.20.8",
|
||||
"sprintf-js": "^1.1.1",
|
||||
"sqlite3": "^3.1.8",
|
||||
"sqlite3": "^4.0.1",
|
||||
"string-padding": "^1.0.2",
|
||||
"string-to-stream": "^1.1.0",
|
||||
"strip-ansi": "^4.0.0",
|
||||
"syswide-cas": "^5.2.0",
|
||||
"tar": "^4.4.0",
|
||||
"tcp-port-used": "^0.1.2",
|
||||
"tkwidgets": "^0.5.26",
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
START_DIR="$(pwd)"
|
||||
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
BUILD_DIR="$ROOT_DIR/tests-build"
|
||||
TEST_FILE="$1"
|
||||
@@ -8,8 +9,29 @@ rsync -a "$ROOT_DIR/../ReactNativeClient/lib/" "$BUILD_DIR/lib/"
|
||||
rsync -a "$ROOT_DIR/build/locales/" "$BUILD_DIR/locales/"
|
||||
mkdir -p "$BUILD_DIR/data"
|
||||
|
||||
if [[ $TEST_FILE == "" ]]; then
|
||||
(cd "$ROOT_DIR" && npm test tests-build/synchronizer.js tests-build/encryption.js tests-build/ArrayUtils.js tests-build/models_Setting.js tests-build/models_Note.js tests-build/models_Folder.js tests-build/services_InteropService.js)
|
||||
else
|
||||
if [[ $TEST_FILE != "" ]]; then
|
||||
(cd "$ROOT_DIR" && npm test tests-build/$TEST_FILE.js)
|
||||
fi
|
||||
exit
|
||||
fi
|
||||
|
||||
function finish {
|
||||
cd "$START_DIR"
|
||||
}
|
||||
|
||||
trap finish EXIT
|
||||
|
||||
cd "$ROOT_DIR"
|
||||
npm test tests-build/ArrayUtils.js
|
||||
npm test tests-build/EnexToMd.js
|
||||
npm test tests-build/HtmlToMd.js
|
||||
npm test tests-build/markdownUtils.js
|
||||
npm test tests-build/models_Folder.js
|
||||
npm test tests-build/models_Note.js
|
||||
npm test tests-build/models_Tag.js
|
||||
npm test tests-build/models_Setting.js
|
||||
npm test tests-build/services_InteropService.js
|
||||
npm test tests-build/services_ResourceService.js
|
||||
npm test tests-build/urlUtils.js
|
||||
npm test tests-build/encryption.js
|
||||
npm test tests-build/services_rest_Api.js
|
||||
npm test tests-build/synchronizer.js
|
62
CliClient/tests/EnexToMd.js
Normal file
62
CliClient/tests/EnexToMd.js
Normal file
@@ -0,0 +1,62 @@
|
||||
require('app-module-path').addPath(__dirname);
|
||||
|
||||
const { time } = require('lib/time-utils.js');
|
||||
const { filename } = require('lib/path-utils.js');
|
||||
const { asyncTest, fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('test-utils.js');
|
||||
const Folder = require('lib/models/Folder.js');
|
||||
const Note = require('lib/models/Note.js');
|
||||
const BaseModel = require('lib/BaseModel.js');
|
||||
const { shim } = require('lib/shim');
|
||||
const { enexXmlToMd } = require('lib/import-enex-md-gen.js');
|
||||
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 60 * 60 * 1000; // Can run for a while since everything is in the same test unit
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
|
||||
describe('EnexToMd', function() {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
await setupDatabaseAndSynchronizer(1);
|
||||
await switchClient(1);
|
||||
done();
|
||||
});
|
||||
|
||||
it('should convert from Enex to Markdown', asyncTest(async () => {
|
||||
const basePath = __dirname + '/enex_to_md';
|
||||
const files = await shim.fsDriver().readDirStats(basePath);
|
||||
|
||||
for (let i = 0; i < files.length; i++) {
|
||||
const htmlFilename = files[i].path;
|
||||
if (htmlFilename.indexOf('.html') < 0) continue;
|
||||
|
||||
const htmlPath = basePath + '/' + htmlFilename;
|
||||
const mdPath = basePath + '/' + filename(htmlFilename) + '.md';
|
||||
|
||||
// if (htmlFilename !== 'text2.html') continue;
|
||||
|
||||
const html = await shim.fsDriver().readFile(htmlPath);
|
||||
const expectedMd = await shim.fsDriver().readFile(mdPath);
|
||||
|
||||
const actualMd = await enexXmlToMd('<div>' + html + '</div>', []);
|
||||
|
||||
if (actualMd !== expectedMd) {
|
||||
console.info('');
|
||||
console.info('Error converting file: ' + htmlFilename);
|
||||
console.info('--------------------------------- Got:');
|
||||
console.info(actualMd.split('\n'));
|
||||
console.info('--------------------------------- Expected:');
|
||||
console.info(expectedMd.split('\n'));
|
||||
console.info('--------------------------------------------');
|
||||
console.info('');
|
||||
|
||||
expect(false).toBe(true);
|
||||
// return;
|
||||
} else {
|
||||
expect(true).toBe(true)
|
||||
}
|
||||
}
|
||||
}));
|
||||
|
||||
});
|
66
CliClient/tests/HtmlToMd.js
Normal file
66
CliClient/tests/HtmlToMd.js
Normal file
@@ -0,0 +1,66 @@
|
||||
require('app-module-path').addPath(__dirname);
|
||||
|
||||
const { time } = require('lib/time-utils.js');
|
||||
const { filename } = require('lib/path-utils.js');
|
||||
const { asyncTest, fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('test-utils.js');
|
||||
const Folder = require('lib/models/Folder.js');
|
||||
const Note = require('lib/models/Note.js');
|
||||
const BaseModel = require('lib/BaseModel.js');
|
||||
const { shim } = require('lib/shim');
|
||||
const HtmlToMd = require('lib/HtmlToMd');
|
||||
const { enexXmlToMd } = require('lib/import-enex-md-gen.js');
|
||||
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 60 * 60 * 1000; // Can run for a while since everything is in the same test unit
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
|
||||
describe('HtmlToMd', function() {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
await setupDatabaseAndSynchronizer(1);
|
||||
await switchClient(1);
|
||||
done();
|
||||
});
|
||||
|
||||
it('should convert from Html to Markdown', asyncTest(async () => {
|
||||
const basePath = __dirname + '/html_to_md';
|
||||
const files = await shim.fsDriver().readDirStats(basePath);
|
||||
const htmlToMd = new HtmlToMd();
|
||||
|
||||
for (let i = 0; i < files.length; i++) {
|
||||
const htmlFilename = files[i].path;
|
||||
if (htmlFilename.indexOf('.html') < 0) continue;
|
||||
|
||||
const htmlPath = basePath + '/' + htmlFilename;
|
||||
const mdPath = basePath + '/' + filename(htmlFilename) + '.md';
|
||||
|
||||
// if (htmlFilename !== 'anchor_with_url_with_spaces.html') continue;
|
||||
|
||||
const html = await shim.fsDriver().readFile(htmlPath);
|
||||
const expectedMd = await shim.fsDriver().readFile(mdPath);
|
||||
|
||||
const actualMd = await htmlToMd.parse('<div>' + html + '</div>', []);
|
||||
|
||||
if (actualMd !== expectedMd) {
|
||||
console.info('');
|
||||
console.info('Error converting file: ' + htmlFilename);
|
||||
console.info('--------------------------------- Got:');
|
||||
console.info(actualMd);
|
||||
console.info('--------------------------------- Raw:');
|
||||
console.info(actualMd.split('\n'));
|
||||
console.info('--------------------------------- Expected:');
|
||||
console.info(expectedMd.split('\n'));
|
||||
console.info('--------------------------------------------');
|
||||
console.info('');
|
||||
|
||||
expect(false).toBe(true);
|
||||
// return;
|
||||
} else {
|
||||
expect(true).toBe(true)
|
||||
}
|
||||
}
|
||||
}));
|
||||
|
||||
});
|
16
CliClient/tests/enex_to_md/code1.html
Normal file
16
CliClient/tests/enex_to_md/code1.html
Normal file
@@ -0,0 +1,16 @@
|
||||
<div>
|
||||
<p>For example, consider a web page like this:</p>
|
||||
|
||||
<pre class="brush: html line-numbers language-html"><code class=" language-html"><span class="token doctype"><!DOCTYPE html></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span><span class="token punctuation">></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>head</span><span class="token punctuation">></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>meta</span> <span class="token attr-name">http-equiv</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>content-type<span class="token punctuation">"</span></span> <span class="token attr-name">content</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>text/html; charset<span class="token punctuation">=</span>utf-8<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>head</span><span class="token punctuation">></span></span>
|
||||
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span><span class="token punctuation">></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">"</span>page-scripts/page-script.js<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script language-javascript"></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span>
|
||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>html</span><span class="token punctuation">></span></span><span class="line-numbers-rows"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></code></pre>
|
||||
|
||||
<p>The script "page-script.js" does this:</p>
|
||||
</div>
|
14
CliClient/tests/enex_to_md/code1.md
Normal file
14
CliClient/tests/enex_to_md/code1.md
Normal file
@@ -0,0 +1,14 @@
|
||||
For example, consider a web page like this:
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<script src="page-scripts/page-script.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
The script "page-script.js" does this:
|
7
CliClient/tests/enex_to_md/code2.html
Normal file
7
CliClient/tests/enex_to_md/code2.html
Normal file
@@ -0,0 +1,7 @@
|
||||
<p>Subshell:</p>
|
||||
<pre><code>(
|
||||
set -e
|
||||
false
|
||||
echo Unreachable
|
||||
) && echo Great success
|
||||
</code></pre>
|
7
CliClient/tests/enex_to_md/code2.md
Normal file
7
CliClient/tests/enex_to_md/code2.md
Normal file
@@ -0,0 +1,7 @@
|
||||
Subshell:
|
||||
|
||||
(
|
||||
set -e
|
||||
false
|
||||
echo Unreachable
|
||||
) && echo Great success
|
9
CliClient/tests/enex_to_md/heading.html
Normal file
9
CliClient/tests/enex_to_md/heading.html
Normal file
@@ -0,0 +1,9 @@
|
||||
<div>
|
||||
<div class="note">
|
||||
<p>Values added to the global scope of a content script with</p>
|
||||
</div>
|
||||
|
||||
<h2 id="Loading_content_scripts">Loading content scripts</h2>
|
||||
|
||||
<p>You can load a content script into a web page in one of three ways:</p>
|
||||
</div>
|
5
CliClient/tests/enex_to_md/heading.md
Normal file
5
CliClient/tests/enex_to_md/heading.md
Normal file
@@ -0,0 +1,5 @@
|
||||
Values added to the global scope of a content script with
|
||||
|
||||
## Loading content scripts
|
||||
|
||||
You can load a content script into a web page in one of three ways:
|
3
CliClient/tests/enex_to_md/inlineCode.html
Normal file
3
CliClient/tests/enex_to_md/inlineCode.html
Normal file
@@ -0,0 +1,3 @@
|
||||
<div>
|
||||
<p>Similarly, I need another regex to match double newlines (<code>\n\n</code>) that are not part of a longer run of newline characters like <code>\n\n\n</code> or <code>\n\n\n\n\n\n</code> etc.</p>
|
||||
</div>
|
1
CliClient/tests/enex_to_md/inlineCode.md
Normal file
1
CliClient/tests/enex_to_md/inlineCode.md
Normal file
@@ -0,0 +1 @@
|
||||
Similarly, I need another regex to match double newlines (`\n\n`) that are not part of a longer run of newline characters like `\n\n\n` or `\n\n\n\n\n\n` etc.
|
3
CliClient/tests/enex_to_md/inlineCodeWithLink.html
Normal file
3
CliClient/tests/enex_to_md/inlineCodeWithLink.html
Normal file
@@ -0,0 +1,3 @@
|
||||
<div>
|
||||
<p>the <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onConnect">runtime.onConnect</a></code> listener gets passed its own <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/Port">runtime.Port</a></code> object.</p>
|
||||
</div>
|
1
CliClient/tests/enex_to_md/inlineCodeWithLink.md
Normal file
1
CliClient/tests/enex_to_md/inlineCodeWithLink.md
Normal file
@@ -0,0 +1 @@
|
||||
the `[runtime.onConnect](/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onConnect)` listener gets passed its own `[runtime.Port](/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/Port)` object.
|
4
CliClient/tests/enex_to_md/link1.html
Normal file
4
CliClient/tests/enex_to_md/link1.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<a href="https://arstechnica.com/civis/ucp.php?mode=login&return_to=%2Ftech-policy%2F2018%2F05%2Fjails-are-replacing-in-person-visits-with-video-calling-services-theyre-awful%2F" class="dropdown-toggle">
|
||||
Sign in
|
||||
<span class="icon dropdown-indicator icon-drop-indicator"></span>
|
||||
</a>
|
1
CliClient/tests/enex_to_md/link1.md
Normal file
1
CliClient/tests/enex_to_md/link1.md
Normal file
@@ -0,0 +1 @@
|
||||
[Sign in](https://arstechnica.com/civis/ucp.php?mode=login&return_to=%2Ftech-policy%2F2018%2F05%2Fjails-are-replacing-in-person-visits-with-video-calling-services-theyre-awful%2F)
|
17
CliClient/tests/enex_to_md/list.html
Normal file
17
CliClient/tests/enex_to_md/list.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<div>
|
||||
<p>Liste de courses</p>
|
||||
|
||||
<div>
|
||||
<div><en-todo checked="true"/>Pizzas</div>
|
||||
<div><en-todo checked="true"/>Pain</div>
|
||||
<div><en-todo checked="true"/>Jambon</div>
|
||||
</div>
|
||||
|
||||
<div><br/></div>
|
||||
|
||||
<div>
|
||||
<div><en-todo checked="true"/>On its own</div>
|
||||
</div>
|
||||
|
||||
<p>End</p>
|
||||
</div>
|
9
CliClient/tests/enex_to_md/list.md
Normal file
9
CliClient/tests/enex_to_md/list.md
Normal file
@@ -0,0 +1,9 @@
|
||||
Liste de courses
|
||||
|
||||
- [X] Pizzas
|
||||
- [X] Pain
|
||||
- [X] Jambon
|
||||
|
||||
- [X] On its own
|
||||
|
||||
End
|
1
CliClient/tests/enex_to_md/list2.html
Normal file
1
CliClient/tests/enex_to_md/list2.html
Normal file
@@ -0,0 +1 @@
|
||||
<ul class="find-me-on"><li><a href="https://github.com/zetter">Github</a></li><li><a href="https://twitter.com/czetter">Twitter</a></li><li><a href="http://lanyrd.com/profile/czetter/">Lanyrd</a></li></ul>
|
3
CliClient/tests/enex_to_md/list2.md
Normal file
3
CliClient/tests/enex_to_md/list2.md
Normal file
@@ -0,0 +1,3 @@
|
||||
- [Github](https://github.com/zetter)
|
||||
- [Twitter](https://twitter.com/czetter)
|
||||
- [Lanyrd](http://lanyrd.com/profile/czetter/)
|
1
CliClient/tests/enex_to_md/list3.html
Normal file
1
CliClient/tests/enex_to_md/list3.html
Normal file
@@ -0,0 +1 @@
|
||||
<ul class="find-me-on"><li>Github</li><li>Twitter</li></ul>
|
2
CliClient/tests/enex_to_md/list3.md
Normal file
2
CliClient/tests/enex_to_md/list3.md
Normal file
@@ -0,0 +1,2 @@
|
||||
- Github
|
||||
- Twitter
|
11
CliClient/tests/enex_to_md/paragraph.html
Normal file
11
CliClient/tests/enex_to_md/paragraph.html
Normal file
@@ -0,0 +1,11 @@
|
||||
<div>
|
||||
<p>Short paragraphs are merged together:</p>
|
||||
<p>Something something</p>
|
||||
<p>Blablbla blabla lbla</p>
|
||||
<p>Last line</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p>Longer ones are separated by new lines. In 1894 Joplin arrived in Sedalia, Missouri. At first, Joplin stayed with the family of Arthur Marshall, at the time a 13-year-old boy but later one of Joplin's students and a rag-time composer in his own right.[26] There is no record of Joplin having a permanent residence in the town until 1904, as Joplin was making a living as a touring musician.</p>
|
||||
<p>There is little precise evidence known about Joplin's activities at this time, although he performed as a solo musician at dances and at the major black clubs in Sedalia, the Black 400 club and the Maple Leaf Club. He performed in the Queen City Cornet Band, and his own six-piece dance orchestra.</p>
|
||||
</div>
|
8
CliClient/tests/enex_to_md/paragraph.md
Normal file
8
CliClient/tests/enex_to_md/paragraph.md
Normal file
@@ -0,0 +1,8 @@
|
||||
Short paragraphs are merged together:
|
||||
Something something
|
||||
Blablbla blabla lbla
|
||||
Last line
|
||||
|
||||
Longer ones are separated by new lines. In 1894 Joplin arrived in Sedalia, Missouri. At first, Joplin stayed with the family of Arthur Marshall, at the time a 13-year-old boy but later one of Joplin's students and a rag-time composer in his own right.[26] There is no record of Joplin having a permanent residence in the town until 1904, as Joplin was making a living as a touring musician.
|
||||
|
||||
There is little precise evidence known about Joplin's activities at this time, although he performed as a solo musician at dances and at the major black clubs in Sedalia, the Black 400 club and the Maple Leaf Club. He performed in the Queen City Cornet Band, and his own six-piece dance orchestra.
|
12
CliClient/tests/enex_to_md/table1.html
Normal file
12
CliClient/tests/enex_to_md/table1.html
Normal file
@@ -0,0 +1,12 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div>$ sudo ethtool --set-priv-flags p2p1 mlx4_rss_xor_hash_function on</div>
|
||||
<div># Three empty lines follow</div>
|
||||
<div><br/></div>
|
||||
<div><br/></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
Some text
|
5
CliClient/tests/enex_to_md/table1.md
Normal file
5
CliClient/tests/enex_to_md/table1.md
Normal file
@@ -0,0 +1,5 @@
|
||||
| |
|
||||
| --- |
|
||||
| $ sudo ethtool --set-priv-flags p2p1 mlx4_rss_xor_hash_function on<br># Three empty lines follow |
|
||||
|
||||
Some text
|
3
CliClient/tests/enex_to_md/tableWithNewLines.html
Normal file
3
CliClient/tests/enex_to_md/tableWithNewLines.html
Normal file
@@ -0,0 +1,3 @@
|
||||
<div>
|
||||
<table style="-evernote-table:true;border-collapse:collapse;width:100%;table-layout:fixed;margin-left:0px;"><tr><td style="border-style:solid;border-width:1px;border-color:rgb(211,211,211);padding:10px;margin:0px;width:50%;"><div>line 1</div><div>line 2</div></td><td style="border-style:solid;border-width:1px;border-color:rgb(211,211,211);padding:10px;margin:0px;width:50%;"><div><br/></div></td></tr><tr><td style="border-style:solid;border-width:1px;border-color:rgb(211,211,211);padding:10px;margin:0px;width:50%;"><div>aaaaaa</div></td><td style="border-style:solid;border-width:1px;border-color:rgb(211,211,211);padding:10px;margin:0px;width:50%;"><div>line 3</div><div>line 4</div></td></tr></table>
|
||||
</div>
|
4
CliClient/tests/enex_to_md/tableWithNewLines.md
Normal file
4
CliClient/tests/enex_to_md/tableWithNewLines.md
Normal file
@@ -0,0 +1,4 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| line 1<br>line 2 | |
|
||||
| aaaaaa | line 3<br>line 4 |
|
1
CliClient/tests/html_to_md/anchor_with_inner_tags.html
Normal file
1
CliClient/tests/html_to_md/anchor_with_inner_tags.html
Normal file
@@ -0,0 +1 @@
|
||||
<a href="https://joplin.cozic.net"><h1 id="joplin"><img class="title-icon" src="https://joplin.cozic.net/images/Icon512.png">oplin</h1></a>
|
1
CliClient/tests/html_to_md/anchor_with_inner_tags.md
Normal file
1
CliClient/tests/html_to_md/anchor_with_inner_tags.md
Normal file
@@ -0,0 +1 @@
|
||||
[# oplin](https://joplin.cozic.net)
|
1
CliClient/tests/html_to_md/anchor_with_js.html
Normal file
1
CliClient/tests/html_to_md/anchor_with_js.html
Normal file
@@ -0,0 +1 @@
|
||||
<a href="javascript:alert('js')">Some text</a>
|
1
CliClient/tests/html_to_md/anchor_with_js.md
Normal file
1
CliClient/tests/html_to_md/anchor_with_js.md
Normal file
@@ -0,0 +1 @@
|
||||
[Some text]()
|
1
CliClient/tests/html_to_md/anchor_with_newlines.html
Normal file
1
CliClient/tests/html_to_md/anchor_with_newlines.html
Normal file
@@ -0,0 +1 @@
|
||||
<a href="http://example.com"><p>That</p><p>Shouldn't be allowed</p></a>
|
1
CliClient/tests/html_to_md/anchor_with_newlines.md
Normal file
1
CliClient/tests/html_to_md/anchor_with_newlines.md
Normal file
@@ -0,0 +1 @@
|
||||
[That<br>Shouldn't be allowed](http://example.com)
|
@@ -0,0 +1 @@
|
||||
<a href="http://example.com/That is not right"/>Testing</a>
|
@@ -0,0 +1 @@
|
||||
[Testing](http://example.com/That%20is%20not%20right)
|
8
CliClient/tests/html_to_md/code_1.html
Normal file
8
CliClient/tests/html_to_md/code_1.html
Normal file
@@ -0,0 +1,8 @@
|
||||
<div>
|
||||
<table><tbody><tr><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> ma_fonction<span style="color: black;">(</span><span style="color: black;">)</span>:
|
||||
<span style="color: #483d8b;">"""
|
||||
C'est une super fonction
|
||||
"""</span>
|
||||
<span style="color: #ff7700;font-weight:bold;">pass</span></pre></td></tr></tbody></table>
|
||||
|
||||
</div>
|
5
CliClient/tests/html_to_md/code_1.md
Normal file
5
CliClient/tests/html_to_md/code_1.md
Normal file
@@ -0,0 +1,5 @@
|
||||
def ma_fonction():
|
||||
"""
|
||||
C'est une super fonction
|
||||
"""
|
||||
pass
|
13
CliClient/tests/html_to_md/list_with_many_items.html
Normal file
13
CliClient/tests/html_to_md/list_with_many_items.html
Normal file
@@ -0,0 +1,13 @@
|
||||
<!-- Make sure in particular that indentation is correct after the 9th item -->
|
||||
<ol>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
<li><p>One</p><p>Two</p></li>
|
||||
</ol>
|
39
CliClient/tests/html_to_md/list_with_many_items.md
Normal file
39
CliClient/tests/html_to_md/list_with_many_items.md
Normal file
@@ -0,0 +1,39 @@
|
||||
1. One
|
||||
|
||||
Two
|
||||
|
||||
2. One
|
||||
|
||||
Two
|
||||
|
||||
3. One
|
||||
|
||||
Two
|
||||
|
||||
4. One
|
||||
|
||||
Two
|
||||
|
||||
5. One
|
||||
|
||||
Two
|
||||
|
||||
6. One
|
||||
|
||||
Two
|
||||
|
||||
7. One
|
||||
|
||||
Two
|
||||
|
||||
8. One
|
||||
|
||||
Two
|
||||
|
||||
9. One
|
||||
|
||||
Two
|
||||
|
||||
10. One
|
||||
|
||||
Two
|
29
CliClient/tests/html_to_md/picture_with_no_img.html
Normal file
29
CliClient/tests/html_to_md/picture_with_no_img.html
Normal file
@@ -0,0 +1,29 @@
|
||||
Some pictures:
|
||||
|
||||
<picture>
|
||||
<!--[if IE 9]><video style="display: none;"><![endif]-->
|
||||
<source media="(min-width: 768px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w">
|
||||
<source media="(min-width: 768px)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w">
|
||||
<source media="(min-width: 481px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w">
|
||||
<source media="(min-width: 481px)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w">
|
||||
<source media="(min-width: 321px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="450px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop&dpr=1.5 675w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop&dpr=1.5 675w">
|
||||
<source media="(min-width: 321px)" sizes="450px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop 450w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop 450w">
|
||||
<source media="(min-width: 0px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="320px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop&dpr=1.5 480w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop&dpr=1.5 480w">
|
||||
<source media="(min-width: 0px)" sizes="320px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop 320w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop 320w">
|
||||
<!--[if IE 9]></video><![endif]-->
|
||||
<img class=" lazyloaded" title="" alt="" id="img-id-0">
|
||||
</picture>
|
||||
|
||||
<picture>
|
||||
<!--[if IE 9]><video style="display: none;"><![endif]-->
|
||||
<source media="(min-width: 768px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w">
|
||||
<source media="(min-width: 768px)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w">
|
||||
<source media="(min-width: 481px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop&dpr=1.5 882w">
|
||||
<source media="(min-width: 481px)" sizes="588px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=588&h=900&fit=crop 588w">
|
||||
<source media="(min-width: 321px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="450px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop&dpr=1.5 675w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop&dpr=1.5 675w">
|
||||
<source media="(min-width: 321px)" sizes="450px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop 450w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=450&h=688&fit=crop 450w">
|
||||
<source media="(min-width: 0px) and (-webkit-min-device-pixel-ratio: 1.25), (min-width: px) and (min-resolution: 120dpi)" sizes="320px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop&dpr=1.5 480w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop&dpr=1.5 480w">
|
||||
<source media="(min-width: 0px)" sizes="320px" data-srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop 320w" srcset="https://static2.cbrimages.com/wp-content/uploads/2018/09/Die-01-cvrA.jpg?q=35&w=320&h=489&fit=crop 320w">
|
||||
<!--[if IE 9]></video><![endif]-->
|
||||
<img class=" lazyloaded" title="" alt="" id="img-id-0" src="http://example.com/test.gif">
|
||||
</picture>
|
1
CliClient/tests/html_to_md/picture_with_no_img.md
Normal file
1
CliClient/tests/html_to_md/picture_with_no_img.md
Normal file
@@ -0,0 +1 @@
|
||||
Some pictures:  
|
1
CliClient/tests/html_to_md/skip_script.html
Normal file
1
CliClient/tests/html_to_md/skip_script.html
Normal file
@@ -0,0 +1 @@
|
||||
<script id="appnexus-adload" data-reactid="7">window.apntag=window.apntag||{};window.apntag.anq=window.apntag.anq||[];</script>
|
0
CliClient/tests/html_to_md/skip_script.md
Normal file
0
CliClient/tests/html_to_md/skip_script.md
Normal file
6
CliClient/tests/html_to_md/skip_style.html
Normal file
6
CliClient/tests/html_to_md/skip_style.html
Normal file
File diff suppressed because one or more lines are too long
0
CliClient/tests/html_to_md/skip_style.md
Normal file
0
CliClient/tests/html_to_md/skip_style.md
Normal file
4
CliClient/tests/html_to_md/table_no_header.html
Normal file
4
CliClient/tests/html_to_md/table_no_header.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<table>
|
||||
<tr><td>No</td><td>header</td></tr>
|
||||
<tr><td>And no</td><td>suprises</td></tr>
|
||||
</table>
|
4
CliClient/tests/html_to_md/table_no_header.md
Normal file
4
CliClient/tests/html_to_md/table_no_header.md
Normal file
@@ -0,0 +1,4 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| No | header |
|
||||
| And no | suprises |
|
15
CliClient/tests/html_to_md/table_with_colspan.html
Normal file
15
CliClient/tests/html_to_md/table_with_colspan.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
Something that was originally spanning two columns
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
One
|
||||
</td>
|
||||
<td>
|
||||
Two
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
4
CliClient/tests/html_to_md/table_with_colspan.md
Normal file
4
CliClient/tests/html_to_md/table_with_colspan.md
Normal file
@@ -0,0 +1,4 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| Something that was originally spanning two columns | |
|
||||
| One | Two |
|
10
CliClient/tests/html_to_md/table_with_empty_cells.html
Normal file
10
CliClient/tests/html_to_md/table_with_empty_cells.html
Normal file
@@ -0,0 +1,10 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>Previous is empty</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Next is empty</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
4
CliClient/tests/html_to_md/table_with_empty_cells.md
Normal file
4
CliClient/tests/html_to_md/table_with_empty_cells.md
Normal file
@@ -0,0 +1,4 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| | Previous is empty |
|
||||
| Next is empty | |
|
13
CliClient/tests/html_to_md/table_with_empty_row.html
Normal file
13
CliClient/tests/html_to_md/table_with_empty_row.html
Normal file
@@ -0,0 +1,13 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td>One</td><td>Two</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td>One</td><td>Two</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td>One</td><td>Two</td>
|
||||
</tr>
|
||||
</table>
|
5
CliClient/tests/html_to_md/table_with_empty_row.md
Normal file
5
CliClient/tests/html_to_md/table_with_empty_row.md
Normal file
@@ -0,0 +1,5 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| One | Two |
|
||||
| One | Two |
|
||||
| One | Two |
|
6
CliClient/tests/html_to_md/table_with_newlines.html
Normal file
6
CliClient/tests/html_to_md/table_with_newlines.html
Normal file
@@ -0,0 +1,6 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td><p>Some paragraph</p><p>inside a table cell</p></td>
|
||||
<td>Second column</td>
|
||||
</tr>
|
||||
</table>
|
3
CliClient/tests/html_to_md/table_with_newlines.md
Normal file
3
CliClient/tests/html_to_md/table_with_newlines.md
Normal file
@@ -0,0 +1,3 @@
|
||||
| | |
|
||||
| --- | --- |
|
||||
| Some paragraph<br><br>inside a table cell | Second column |
|
16
CliClient/tests/html_to_md/table_within_table.html
Normal file
16
CliClient/tests/html_to_md/table_within_table.html
Normal file
@@ -0,0 +1,16 @@
|
||||
<!--
|
||||
The inner table is rendered but not the outer one.
|
||||
Basically if any table contains another table, it is rendered as plain text
|
||||
-->
|
||||
<table>
|
||||
<tr><td>
|
||||
First column, and an inner table:
|
||||
|
||||
<table>
|
||||
<tr><td>One</td><td>Two</td></tr>
|
||||
<tr><td>One</td><td>Two</td></tr>
|
||||
</table>
|
||||
</td>
|
||||
<td>Second column</td>
|
||||
</tr>
|
||||
</table>
|
8
CliClient/tests/html_to_md/table_within_table.md
Normal file
8
CliClient/tests/html_to_md/table_within_table.md
Normal file
@@ -0,0 +1,8 @@
|
||||
First column, and an inner table:
|
||||
|
||||
| | |
|
||||
| --- | --- |
|
||||
| One | Two |
|
||||
| One | Two |
|
||||
|
||||
Second column
|
5
CliClient/tests/html_to_md/text_with_escaped_html.html
Normal file
5
CliClient/tests/html_to_md/text_with_escaped_html.html
Normal file
@@ -0,0 +1,5 @@
|
||||
<p>Some text, not an image, so it should remain escaped:</p>
|
||||
<p><img src="http://test.com/image.png" /></p>
|
||||
<p><p class="testing">Paragraph example</p>
|
||||
<p>But this is code so it can be unescaped:</p>
|
||||
<pre><code><img src="http://test.com/image.png" /></code></pre>
|
9
CliClient/tests/html_to_md/text_with_escaped_html.md
Normal file
9
CliClient/tests/html_to_md/text_with_escaped_html.md
Normal file
@@ -0,0 +1,9 @@
|
||||
Some text, not an image, so it should remain escaped:
|
||||
|
||||
<img src="http://test.com/image.png" />
|
||||
|
||||
<p class="testing">Paragraph example</p>
|
||||
|
||||
But this is code so it can be unescaped:
|
||||
|
||||
<img src="http://test.com/image.png" />
|
55
CliClient/tests/markdownUtils.js
Normal file
55
CliClient/tests/markdownUtils.js
Normal file
@@ -0,0 +1,55 @@
|
||||
require('app-module-path').addPath(__dirname);
|
||||
|
||||
const { time } = require('lib/time-utils.js');
|
||||
const { fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('test-utils.js');
|
||||
const markdownUtils = require('lib/markdownUtils.js');
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
|
||||
describe('markdownUtils', function() {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
done();
|
||||
});
|
||||
|
||||
it('should prepend a base URL', async (done) => {
|
||||
const baseUrl = 'https://test.com/site';
|
||||
|
||||
const testCases = [
|
||||
['[something](testing.html)', '[something](https://test.com/site/testing.html)'],
|
||||
['', ''],
|
||||
['[](/index.html "Home page")', '[](https://test.com/index.html "Home page")'],
|
||||
['[onelink.com](/jmp/?id=123&u=http://something.com/test)', '[onelink.com](https://test.com/jmp/?id=123&u=http://something.com/test)'],
|
||||
['[](/jmp/?s=80&l=related&u=http://example.com "some decription")', '[](https://test.com/jmp/?s=80&l=related&u=http://example.com "some decription")'],
|
||||
];
|
||||
|
||||
for (let i = 0; i < testCases.length; i++) {
|
||||
const md = testCases[i][0];
|
||||
const expected = testCases[i][1];
|
||||
expect(markdownUtils.prependBaseUrl(md, baseUrl)).toBe(expected);
|
||||
}
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should extract image URLs', async (done) => {
|
||||
const testCases = [
|
||||
['', ['http://test.com/img.png']],
|
||||
[' ', ['http://test.com/img.png', 'http://test.com/img2.png']],
|
||||
['', ['http://test.com/img.png']],
|
||||
['.png)', ['https://test.com/ohoh_(123).png']],
|
||||
];
|
||||
|
||||
for (let i = 0; i < testCases.length; i++) {
|
||||
const md = testCases[i][0];
|
||||
const expected = testCases[i][1];
|
||||
|
||||
expect(markdownUtils.extractImageUrls(md).join('')).toBe(expected.join(''));
|
||||
}
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
});
|
@@ -34,6 +34,12 @@ describe('models_Note', function() {
|
||||
expect(items.length).toBe(2);
|
||||
expect(items[0].type_).toBe(BaseModel.TYPE_NOTE);
|
||||
expect(items[1].type_).toBe(BaseModel.TYPE_RESOURCE);
|
||||
|
||||
const resource = items[1];
|
||||
note2.body += '<img alt="bla" src=":/' + resource.id + '"/>';
|
||||
note2.body += '<img src=\':/' + resource.id + '\' />';
|
||||
items = await Note.linkedItems(note2.body);
|
||||
expect(items.length).toBe(4);
|
||||
}));
|
||||
|
||||
});
|
45
CliClient/tests/models_Tag.js
Normal file
45
CliClient/tests/models_Tag.js
Normal file
@@ -0,0 +1,45 @@
|
||||
require('app-module-path').addPath(__dirname);
|
||||
|
||||
const { time } = require('lib/time-utils.js');
|
||||
const { asyncTest, fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('test-utils.js');
|
||||
const Folder = require('lib/models/Folder.js');
|
||||
const Note = require('lib/models/Note.js');
|
||||
const Tag = require('lib/models/Tag.js');
|
||||
const BaseModel = require('lib/BaseModel.js');
|
||||
const { shim } = require('lib/shim');
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
|
||||
describe('models_Tag', function() {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
await setupDatabaseAndSynchronizer(1);
|
||||
await switchClient(1);
|
||||
done();
|
||||
});
|
||||
|
||||
it('should add tags by title', asyncTest(async () => {
|
||||
let folder1 = await Folder.save({ title: "folder1" });
|
||||
let note1 = await Note.save({ title: 'ma note', parent_id: folder1.id });
|
||||
|
||||
await Tag.setNoteTagsByTitles(note1.id, ['un', 'deux']);
|
||||
|
||||
const noteTags = await Tag.tagsByNoteId(note1.id);
|
||||
expect(noteTags.length).toBe(2);
|
||||
}));
|
||||
|
||||
it('should not allow renaming tag to existing tag names', asyncTest(async () => {
|
||||
let folder1 = await Folder.save({ title: "folder1" });
|
||||
let note1 = await Note.save({ title: 'ma note', parent_id: folder1.id });
|
||||
|
||||
await Tag.setNoteTagsByTitles(note1.id, ['un', 'deux']);
|
||||
|
||||
const tagUn = await Tag.loadByTitle('un');
|
||||
const hasThrown = await checkThrowAsync(async () => await Tag.save({ id: tagUn.id, title: 'deux' }, { userSideValidation: true }));
|
||||
|
||||
expect(hasThrown).toBe(true);
|
||||
}));
|
||||
|
||||
});
|
@@ -13,6 +13,8 @@ const ArrayUtils = require('lib/ArrayUtils');
|
||||
const ObjectUtils = require('lib/ObjectUtils');
|
||||
const { shim } = require('lib/shim.js');
|
||||
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
@@ -249,6 +251,41 @@ describe('services_InteropService', function() {
|
||||
expect(folder2.title).toBe('folder1');
|
||||
}));
|
||||
|
||||
it('should export and import folder and its sub-folders', asyncTest(async () => {
|
||||
|
||||
const service = new InteropService();
|
||||
const filePath = exportDir() + '/test.jex';
|
||||
let folder1 = await Folder.save({ title: "folder1" });
|
||||
let folder2 = await Folder.save({ title: "folder2", parent_id: folder1.id });
|
||||
let folder3 = await Folder.save({ title: "folder3", parent_id: folder2.id });
|
||||
let folder4 = await Folder.save({ title: "folder4", parent_id: folder2.id });
|
||||
let note1 = await Note.save({ title: 'ma note', parent_id: folder4.id });
|
||||
|
||||
await service.export({ path: filePath, sourceFolderIds: [folder1.id] });
|
||||
|
||||
await Note.delete(note1.id);
|
||||
await Folder.delete(folder1.id);
|
||||
await Folder.delete(folder2.id);
|
||||
await Folder.delete(folder3.id);
|
||||
await Folder.delete(folder4.id);
|
||||
|
||||
await service.import({ path: filePath });
|
||||
|
||||
expect(await Note.count()).toBe(1);
|
||||
expect(await Folder.count()).toBe(4);
|
||||
|
||||
let folder1_2 = await Folder.loadByTitle('folder1');
|
||||
let folder2_2 = await Folder.loadByTitle('folder2');
|
||||
let folder3_2 = await Folder.loadByTitle('folder3');
|
||||
let folder4_2 = await Folder.loadByTitle('folder4');
|
||||
let note1_2 = await Note.loadByTitle('ma note');
|
||||
|
||||
expect(folder2_2.parent_id).toBe(folder1_2.id);
|
||||
expect(folder3_2.parent_id).toBe(folder2_2.id);
|
||||
expect(folder4_2.parent_id).toBe(folder2_2.id);
|
||||
expect(note1_2.parent_id).toBe(folder4_2.id);
|
||||
}));
|
||||
|
||||
it('should export and import links to notes', asyncTest(async () => {
|
||||
const service = new InteropService();
|
||||
const filePath = exportDir() + '/test.jex';
|
||||
|
@@ -79,7 +79,6 @@ describe('services_ResourceService', function() {
|
||||
let note2 = await Note.save({ title: 'ma deuxième note', parent_id: folder1.id });
|
||||
note1 = await shim.attachFileToNote(note1, __dirname + '/../tests/support/photo.jpg');
|
||||
let resource1 = (await Resource.all())[0];
|
||||
const resourcePath = Resource.fullPath(resource1);
|
||||
|
||||
await service.indexNoteResources();
|
||||
|
||||
@@ -96,4 +95,33 @@ describe('services_ResourceService', function() {
|
||||
expect(!!(await Resource.load(resource1.id))).toBe(true);
|
||||
}));
|
||||
|
||||
it('should not delete a resource that has never been associated with any note, because it probably means the resource came via sync, and associated note has not arrived yet', asyncTest(async () => {
|
||||
const service = new ResourceService();
|
||||
const resource = await shim.createResourceFromPath(__dirname + '/../tests/support/photo.jpg');
|
||||
|
||||
await service.indexNoteResources();
|
||||
await service.deleteOrphanResources(0);
|
||||
|
||||
expect((await Resource.all()).length).toBe(1);
|
||||
}));
|
||||
|
||||
it('should not delete resource if it is used in an IMG tag', asyncTest(async () => {
|
||||
const service = new ResourceService();
|
||||
|
||||
let folder1 = await Folder.save({ title: "folder1" });
|
||||
let note1 = await Note.save({ title: 'ma note', parent_id: folder1.id });
|
||||
note1 = await shim.attachFileToNote(note1, __dirname + '/../tests/support/photo.jpg');
|
||||
let resource1 = (await Resource.all())[0];
|
||||
|
||||
await service.indexNoteResources();
|
||||
|
||||
await Note.save({ id: note1.id, body: 'This is HTML: <img src=":/' + resource1.id + '"/>' });
|
||||
|
||||
await service.indexNoteResources();
|
||||
|
||||
await service.deleteOrphanResources(0);
|
||||
|
||||
expect(!!(await Resource.load(resource1.id))).toBe(true);
|
||||
}));
|
||||
|
||||
});
|
275
CliClient/tests/services_rest_Api.js
Normal file
275
CliClient/tests/services_rest_Api.js
Normal file
@@ -0,0 +1,275 @@
|
||||
require('app-module-path').addPath(__dirname);
|
||||
|
||||
const { time } = require('lib/time-utils.js');
|
||||
const { fileContentEqual, setupDatabase, setupDatabaseAndSynchronizer, db, synchronizer, fileApi, sleep, clearDatabase, switchClient, syncTargetId, objectsEqual, checkThrowAsync } = require('test-utils.js');
|
||||
const markdownUtils = require('lib/markdownUtils.js');
|
||||
const Api = require('lib/services/rest/Api');
|
||||
const Folder = require('lib/models/Folder');
|
||||
const Note = require('lib/models/Note');
|
||||
const Tag = require('lib/models/Tag');
|
||||
const Resource = require('lib/models/Resource');
|
||||
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
|
||||
|
||||
process.on('unhandledRejection', (reason, p) => {
|
||||
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
||||
});
|
||||
|
||||
let api = null;
|
||||
|
||||
describe('services_rest_Api', function() {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
api = new Api();
|
||||
await setupDatabaseAndSynchronizer(1);
|
||||
await switchClient(1);
|
||||
done();
|
||||
});
|
||||
|
||||
it('should ping', async (done) => {
|
||||
const response = await api.route('GET', 'ping');
|
||||
expect(response).toBe('JoplinClipperServer');
|
||||
done();
|
||||
});
|
||||
|
||||
it('should handle Not Found errors', async (done) => {
|
||||
const hasThrown = await checkThrowAsync(async () => await api.route('GET', 'pong'));
|
||||
expect(hasThrown).toBe(true);
|
||||
done();
|
||||
});
|
||||
|
||||
it('should get folders', async (done) => {
|
||||
let f1 = await Folder.save({ title: "mon carnet" });
|
||||
const response = await api.route('GET', 'folders');
|
||||
expect(response.length).toBe(1);
|
||||
expect(response[0].title).toBe('mon carnet');
|
||||
done();
|
||||
});
|
||||
|
||||
it('should update folders', async (done) => {
|
||||
let f1 = await Folder.save({ title: "mon carnet" });
|
||||
const response = await api.route('PUT', 'folders/' + f1.id, null, JSON.stringify({
|
||||
title: 'modifié',
|
||||
}));
|
||||
|
||||
let f1b = await Folder.load(f1.id);
|
||||
expect(f1b.title).toBe('modifié');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should delete folders', async (done) => {
|
||||
let f1 = await Folder.save({ title: "mon carnet" });
|
||||
await api.route('DELETE', 'folders/' + f1.id);
|
||||
|
||||
let f1b = await Folder.load(f1.id);
|
||||
expect(!f1b).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should create folders', async (done) => {
|
||||
const response = await api.route('POST', 'folders', null, JSON.stringify({
|
||||
title: 'from api',
|
||||
}));
|
||||
|
||||
expect(!!response.id).toBe(true);
|
||||
|
||||
let f = await Folder.all();
|
||||
expect(f.length).toBe(1);
|
||||
expect(f[0].title).toBe('from api');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should get one folder', async (done) => {
|
||||
let f1 = await Folder.save({ title: "mon carnet" });
|
||||
const response = await api.route('GET', 'folders/' + f1.id);
|
||||
expect(response.id).toBe(f1.id);
|
||||
|
||||
const hasThrown = await checkThrowAsync(async () => await api.route('GET', 'folders/doesntexist'));
|
||||
expect(hasThrown).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should get the folder notes', async (done) => {
|
||||
let f1 = await Folder.save({ title: "mon carnet" });
|
||||
const response2 = await api.route('GET', 'folders/' + f1.id + '/notes');
|
||||
expect(response2.length).toBe(0);
|
||||
|
||||
const n1 = await Note.save({ title: 'un', parent_id: f1.id });
|
||||
const n2 = await Note.save({ title: 'deux', parent_id: f1.id });
|
||||
const response = await api.route('GET', 'folders/' + f1.id + '/notes');
|
||||
expect(response.length).toBe(2);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should fail on invalid paths', async (done) => {
|
||||
const hasThrown = await checkThrowAsync(async () => await api.route('GET', 'schtroumpf'));
|
||||
expect(hasThrown).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should get notes', async (done) => {
|
||||
let response = null;
|
||||
const f1 = await Folder.save({ title: "mon carnet" });
|
||||
const f2 = await Folder.save({ title: "mon deuxième carnet" });
|
||||
const n1 = await Note.save({ title: 'un', parent_id: f1.id });
|
||||
const n2 = await Note.save({ title: 'deux', parent_id: f1.id });
|
||||
const n3 = await Note.save({ title: 'trois', parent_id: f2.id });
|
||||
|
||||
response = await api.route('GET', 'notes');
|
||||
expect(response.length).toBe(3);
|
||||
|
||||
response = await api.route('GET', 'notes/' + n1.id);
|
||||
expect(response.id).toBe(n1.id);
|
||||
|
||||
response = await api.route('GET', 'notes/' + n3.id, { fields: 'id,title' });
|
||||
expect(Object.getOwnPropertyNames(response).length).toBe(3);
|
||||
expect(response.id).toBe(n3.id);
|
||||
expect(response.title).toBe('trois');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should create notes', async (done) => {
|
||||
let response = null;
|
||||
const f = await Folder.save({ title: "mon carnet" });
|
||||
|
||||
response = await api.route('POST', 'notes', null, JSON.stringify({
|
||||
title: 'testing',
|
||||
parent_id: f.id,
|
||||
}));
|
||||
expect(response.title).toBe('testing');
|
||||
expect(!!response.id).toBe(true);
|
||||
|
||||
response = await api.route('POST', 'notes', null, JSON.stringify({
|
||||
title: 'testing',
|
||||
parent_id: f.id,
|
||||
}));
|
||||
expect(response.title).toBe('testing');
|
||||
expect(!!response.id).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should create notes with images', async (done) => {
|
||||
let response = null;
|
||||
const f = await Folder.save({ title: "mon carnet" });
|
||||
|
||||
response = await api.route('POST', 'notes', null, JSON.stringify({
|
||||
title: 'testing image',
|
||||
parent_id: f.id,
|
||||
image_data_url: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUeNoAyAA3/wFwtO3K6gUB/vz2+Prw9fj/+/r+/wBZKAAExOgF4/MC9ff+MRH6Ui4E+/0Bqc/zutj6AgT+/Pz7+vv7++nu82c4DlMqCvLs8goA/gL8/fz09fb59vXa6vzZ6vjT5fbn6voD/fwC8vX4UiT9Zi//APHyAP8ACgUBAPv5APz7BPj2+DIaC2o3E+3o6ywaC5fT6gD6/QD9/QEVf9kD+/dcLQgJA/7v8vqfwOf18wA1IAIEVycAyt//v9XvAPv7APz8LhoIAPz9Ri4OAgwARgx4W/6fVeEAAAAASUVORK5CYII="
|
||||
}));
|
||||
|
||||
const resources = await Resource.all();
|
||||
expect(resources.length).toBe(1);
|
||||
|
||||
const resource = resources[0];
|
||||
expect(response.body.indexOf(resource.id) >= 0).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should create notes from HTML', async (done) => {
|
||||
let response = null;
|
||||
const f = await Folder.save({ title: "mon carnet" });
|
||||
|
||||
response = await api.route('POST', 'notes', null, JSON.stringify({
|
||||
title: 'testing HTML',
|
||||
parent_id: f.id,
|
||||
body_html: '<b>Bold text</b>',
|
||||
}));
|
||||
|
||||
expect(response.body).toBe('**Bold text**');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should filter fields', async (done) => {
|
||||
let f = api.fields_({ query: { fields: 'one,two' } }, []);
|
||||
expect(f.length).toBe(2);
|
||||
expect(f[0]).toBe('one');
|
||||
expect(f[1]).toBe('two');
|
||||
|
||||
f = api.fields_({ query: { fields: 'one ,, two ' } }, []);
|
||||
expect(f.length).toBe(2);
|
||||
expect(f[0]).toBe('one');
|
||||
expect(f[1]).toBe('two');
|
||||
|
||||
f = api.fields_({ query: { fields: ' ' } }, ['def']);
|
||||
expect(f.length).toBe(1);
|
||||
expect(f[0]).toBe('def');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should handle tokens', async (done) => {
|
||||
api = new Api('mytoken');
|
||||
|
||||
let hasThrown = await checkThrowAsync(async () => await api.route('GET', 'notes'));
|
||||
expect(hasThrown).toBe(true);
|
||||
|
||||
const response = await api.route('GET', 'notes', { token: 'mytoken' })
|
||||
expect(response.length).toBe(0);
|
||||
|
||||
hasThrown = await checkThrowAsync(async () => await api.route('POST', 'notes', null, JSON.stringify({title:'testing'})));
|
||||
expect(hasThrown).toBe(true);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should add tags to notes', async (done) => {
|
||||
const tag = await Tag.save({ title: "mon étiquette" });
|
||||
const note = await Note.save({ title: "ma note" });
|
||||
|
||||
const response = await api.route('POST', 'tags/' + tag.id + '/notes', null, JSON.stringify({
|
||||
id: note.id,
|
||||
}));
|
||||
|
||||
const noteIds = await Tag.noteIds(tag.id);
|
||||
expect(noteIds[0]).toBe(note.id);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should remove tags from notes', async (done) => {
|
||||
const tag = await Tag.save({ title: "mon étiquette" });
|
||||
const note = await Note.save({ title: "ma note" });
|
||||
await Tag.addNote(tag.id, note.id);
|
||||
|
||||
const response = await api.route('DELETE', 'tags/' + tag.id + '/notes/' + note.id);
|
||||
|
||||
const noteIds = await Tag.noteIds(tag.id);
|
||||
expect(noteIds.length).toBe(0);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('should list all tag notes', async (done) => {
|
||||
const tag = await Tag.save({ title: "mon étiquette" });
|
||||
const tag2 = await Tag.save({ title: "mon étiquette 2" });
|
||||
const note1 = await Note.save({ title: "ma note un" });
|
||||
const note2 = await Note.save({ title: "ma note deux" });
|
||||
await Tag.addNote(tag.id, note1.id);
|
||||
await Tag.addNote(tag.id, note2.id);
|
||||
|
||||
const response = await api.route('GET', 'tags/' + tag.id + '/notes');
|
||||
expect(response.length).toBe(2);
|
||||
expect('id' in response[0]).toBe(true);
|
||||
expect('title' in response[0]).toBe(true);
|
||||
|
||||
const response2 = await api.route('GET', 'notes/' + note1.id + '/tags');
|
||||
expect(response2.length).toBe(1);
|
||||
await Tag.addNote(tag2.id, note1.id);
|
||||
const response3 = await api.route('GET', 'notes/' + note1.id + '/tags');
|
||||
expect(response3.length).toBe(2);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
});
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user