1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-09-02 20:46:21 +02:00

Compare commits

...

267 Commits

Author SHA1 Message Date
Laurent Cozic
f07bb5c275 Android release v1.0.304 2019-09-09 18:26:55 +01:00
Laurent Cozic
0e2cc418e2 Electron release v1.0.166 2019-09-09 18:22:42 +01:00
Laurent Cozic
0340456d55 Update translations 2019-09-09 18:22:20 +01:00
Laurent Cozic
7aea2cec69 Desktop: Resolves #1490: Add support for anchor hashes in note links 2019-09-09 18:16:00 +01:00
Laurent Cozic
fa83107840 Doc: Update CLI installation info 2019-09-08 20:21:14 +01:00
Laurent Cozic
bb0bf46f81 CLI v1.0.146 2019-09-08 20:12:49 +01:00
Laurent Cozic
694c3fed2d Cli: Fixed regression that was making installation fail 2019-09-08 20:12:25 +01:00
Laurent Cozic
772e39b710 Tools: Improved git-changelog so that it is less error prone 2019-09-08 17:54:41 +01:00
Laurent Cozic
05e0a2c29d CLI v1.0.145 2019-09-08 17:24:00 +01:00
Laurent Cozic
78e0efb95f Trying CLI release 2019-09-08 17:19:22 +01:00
Laurent Cozic
a5f749cfd2 Tools: Added moment package 2019-09-08 17:18:44 +01:00
Laurent Cozic
3d6c932e1b Cli: Added headless server command (Beta) (#1860)
* Trying to implement headless server

* Cli: Cleaned up and completed server command so that it is usable. Added warnings as it is advanced usage only at this point.

* Restored welcome assets
2019-09-08 17:16:45 +01:00
archont00
4488a1b95f Doc: Update explanation of enabling E2EE (#1859)
As per https://discourse.joplinapp.org/t/totally-confused-re-e2ee/3295, I tried to improve the explanation of the process to avoid multiple encryption keys.
2019-09-08 16:35:10 +01:00
archont00
e2808a90c6 Doc: Update re. impossibility to delete unused Master Keys (#1858)
As per discussion at https://discourse.joplinapp.org/t/totally-confused-re-e2ee/3295/2, I propose to add info about Master Keys persistence.
2019-09-08 16:34:37 +01:00
Laurent Cozic
755a972e02 Update website 2019-09-08 11:09:02 +01:00
Laurent Cozic
8b1de22049 Merge branch 'master' of github.com:laurent22/joplin 2019-09-08 11:07:54 +01:00
Laurent Cozic
a9735123b7 Doc: Added warning to generated HTML files 2019-09-08 11:06:53 +01:00
Laurent Cozic
5ccafa2838 Doc: Added warning to generated HTML files 2019-09-08 10:46:35 +01:00
archont00
e2926a4f82 Doc: Update explanation of enabling E2EE (#1856)
As per https://discourse.joplinapp.org/t/totally-confused-re-e2ee/3295, I tried to improve the explanation of the process to avoid multiple encryption keys.
2019-09-08 10:35:15 +01:00
Laurent Cozic
09df315639 Desktop: Fixes #1833: Do not scroll text when search is open and user type in note 2019-09-07 11:57:31 +01:00
Laurent Cozic
5a9b3b6c7c Desktop, Mobile: Resolves #1832: Only support checkboxes that start with a dash 2019-09-07 11:18:07 +01:00
Laurent Cozic
6da6f35ddd Merge branch 'master' of github.com:laurent22/joplin 2019-09-07 10:47:51 +01:00
Laurent Cozic
dcb5590842 Clipper: Fixes #1851: Fixed error when trying to import certain pages using "Clip simplified page" feature 2019-09-07 10:47:31 +01:00
Laurent Cozic
5135c8a782 Clipper: Fixes #1783: Fixed importing tables that contain pipes 2019-09-07 10:32:52 +01:00
Laurent Cozic
1b2f4fb036 Update bug_report.md 2019-09-07 10:09:05 +01:00
Laurent Cozic
76a4a445f0 Doc: Added info about SKIP_PREFLIGHT_CHECK 2019-09-07 09:56:06 +01:00
Helmut K. C. Tessarek
20abb125a5 infrastructure: skip preflight check for building clipper 2019-09-06 13:53:35 -04:00
Laurent Cozic
be9e50b4a1 Update FUNDING.yml 2019-09-06 18:48:05 +01:00
Helmut K. C. Tessarek
02bfcf577d Clipper release v1.0.18 2019-09-06 13:37:55 -04:00
Laurent Cozic
038efa10f2 Update website 2019-09-06 18:34:47 +01:00
Laurent Cozic
dfa692569b Update translations 2019-09-06 18:33:30 +01:00
Laurent Cozic
9abc6a2e44 CLI: Fixes #1779: Make sure setting side-effects are applied even when running in command line mode 2019-09-06 18:29:40 +01:00
Laurent Cozic
11f23f4e00 Android release v1.0.303 2019-09-06 17:51:38 +01:00
Laurent Cozic
6a7d40d171 Merge branch 'master' of github.com:laurent22/joplin 2019-09-06 17:50:39 +01:00
Laurent Cozic
bf5601429e Mobile: Fixes #1767: Fixed broken search when certain notes are too large 2019-09-06 17:39:36 +01:00
abonte
73ae8aaf2f Update it_IT.po (#1853) 2019-09-05 22:45:36 -04:00
axq
7eb7bd98f3 Doc: Minor English improvements in README.md (#1852) 2019-09-05 17:11:45 +01:00
Laurent Cozic
10e22654ea Desktop: Fixes #1815: Fixed cropped content issue when printing or exporting to PDF 2019-09-04 20:11:35 +01:00
Joan Montané
ccfc80ad04 Update ca.po (#1836) 2019-08-29 17:39:35 +01:00
stellarpower
5e95278084 Fix Cinnamon Detection (#1828)
$desktop was converted to lowercase, but matched against 'X-Cinnamon'
2019-08-29 17:39:10 +01:00
Helmut K. C. Tessarek
d69ba6bc75 All: fix typo on encryption options screen (#1823)
fixes #1798
2019-08-29 17:38:54 +01:00
Caleb John
d28fbe2d3b Desktop: Apply current locale to date and time (#1822) 2019-08-29 17:38:24 +01:00
Caleb John
415e7b84da Desktop: Change localeCompare functiion for tags (#1811)
* change localeCompare functin for tags

* Fix spacing
2019-08-29 17:36:53 +01:00
Caleb John
ac4986b620 Desktop: Fixes #1803: Use correct date format for templates (#1810) 2019-08-29 17:35:43 +01:00
Caleb John
9a4f4cbb65 Desktop: Change template prompt to sans and sort templates (#1806)
* Change template prompt to sans and sort templates

* Sort templates by filename to ensure order
2019-08-29 17:34:54 +01:00
Helmut K. C. Tessarek
8e32957111 Infrastructure: build-translation.js - add support for macOS (#1804)
* remove unnecessary comment

It's totally fine to add the double quotes after -i.
Using gsed would mean that people had to install GNU sed. For what, if the same is possible with the system's sed with a slight modification.
Checking for gsed and using it is more trouble than it's worth.

* build-translation.js: add support for macOS

* implement requested changes
2019-08-29 17:34:05 +01:00
Helmut K. C. Tessarek
91aa3703d4 CLI: Fixes fatal error with cli 1.0.141 on start (#1791)
- updated terminal-kit to 1.30.0
- do not call method, if object does not exist

fixes #1778
2019-08-29 17:05:20 +01:00
FoxMaSk
a889762056 Update README.md
Double line fixed
2019-08-21 10:14:15 +02:00
Robert
6478d6c9c9 Update nl_NL.po (#1821) 2019-08-19 17:59:43 -04:00
FoxMaSk
7a681d0a4a README: add Discord Community Server (#1800)
* Discord Community Server

* Discord Server Link fixed

* improvment
2019-08-19 13:34:43 -04:00
Rafael Teixeira
83b6eba8bd Updated Last Translator pt_BR (#1813) 2019-08-17 02:36:25 -04:00
Helmut K. C. Tessarek
2766ded5f6 Update website 2019-08-16 19:55:27 -04:00
Rafael Teixeira
ca0d966ed9 Translation: Translation Update pt_BR (#1809)
* Updated translation pt-BR

* New updates translation pt_BR
2019-08-16 03:58:07 -04:00
Woosuk Park
386c583b0e Translation : Korean Translation #2 (#1802)
* Korean Language Support

Korean Language 100% Translated, but something is roughted. soon fix it ;)

* some improved

Some Improved

* Improve v2

some polished

* Ok, now Completed

For Now, Completed Polish(Change Respect of Users, and several fixing & polishing) + 100% Translated. Ready to Shipping

* Korean Language Update #2

1. 조플린 -> Joplin (Sorry i forgot)
2. Fuzzy correction.

Korean Language Update #2

1. 조플린 -> Joplin (Sorry i forgot)
2. Fuzzy correction.
2019-08-15 13:15:32 -04:00
Laurent Cozic
b3d34ad7e9 Android release v1.0.299 2019-08-14 23:47:38 +02:00
Laurent Cozic
ba5c636dda Android: Fixed AndroidX transition issue 2019-08-14 23:44:57 +02:00
Laurent Cozic
ea16f6e0b1 Revert "Trying to fix Android buikld"
This reverts commit 0dd0dc5489.
2019-08-14 23:23:27 +02:00
Laurent Cozic
0dd0dc5489 Trying to fix Android buikld 2019-08-14 23:22:52 +02:00
Laurent Cozic
f3ab21ff43 Electron release v1.0.165 2019-08-14 23:17:25 +02:00
Laurent Cozic
5ac6b46efd Desktop: Fixed theme options for Solarized theme 2019-08-14 23:17:02 +02:00
Laurent Cozic
6548f30a4b Electron release v1.0.164 2019-08-14 22:49:45 +02:00
Laurent Cozic
849d7983f6 Desktop: Added support for Fountain screenwriting language 2019-08-14 12:40:06 +02:00
Helmut K. C. Tessarek
e32e4423db change feature request template 2019-08-14 02:08:35 -04:00
Laurent Cozic
7f5bf131a8 Add back files that might have been modified by linter 2019-07-30 11:40:33 +02:00
Laurent Cozic
87a639df2b Mobile: Disabled solarized themes on mobile 2019-07-30 11:37:52 +02:00
Laurent Cozic
bdd8eab87e Mobile: Make it clearer when there are no notebooks and added a button create one 2019-07-30 11:36:56 +02:00
Laurent Cozic
b9e5c8a387 Electron release v1.0.163 2019-07-30 09:52:26 +02:00
Laurent Cozic
d646a2dd01 Fix Linux and macOS build to go around this bug: https://github.com/electron-userland/electron-builder/issues/3179 2019-07-30 09:52:16 +02:00
Laurent Cozic
71a3a0176e Android release v1.0.294 2019-07-30 09:42:09 +02:00
Laurent Cozic
a363d119cf Electron release v1.0.162 2019-07-30 09:37:23 +02:00
Laurent Cozic
ff08bdbc0b Merge branch 'master' of github.com:laurent22/joplin 2019-07-30 09:35:49 +02:00
Laurent Cozic
71efff6827 Linter update (#1777)
* Update eslint config

* Applied linter to lib

* Applied eslint config to CliClient/app

* Removed prettier due to https://github.com/prettier/prettier/pull/4765

* First pass on test units

* Applied linter config to test units

* Applied eslint config to clipper

* Applied to plugin dir

* Applied to root of ElectronClient

* Applied on RN root

* Applied on CLI root

* Applied on Clipper root

* Applied config to tools

* test hook

* test hook

* test hook

* Added pre-commit hook

* Applied rule no-trailing-spaces

* Make sure root packages are installed when installing sub-dir

* Added doc
2019-07-30 09:35:42 +02:00
Laurent Cozic
7595fe4a8c Merge branch 'master' of github.com:laurent22/joplin 2019-07-30 09:32:34 +02:00
Laurent Cozic
7697e75466 Update eslint config 2019-07-29 21:23:14 +02:00
Helmut K. C. Tessarek
b8fbaa2029 Update en_US.po 2019-07-29 11:34:52 -04:00
Helmut K. C. Tessarek
38bc750ecf Update de_DE.po 2019-07-29 11:34:02 -04:00
Laurent Cozic
6cfacb1a48 Second pass at linting lib dir 2019-07-29 15:58:33 +02:00
Laurent Cozic
0b9078d034 config 2019-07-29 15:58:17 +02:00
Laurent Cozic
86dc72b204 First pass at linting lib dir 2019-07-29 15:43:53 +02:00
Laurent Cozic
64b7bc3d62 More config 2019-07-29 15:43:39 +02:00
Laurent Cozic
086f9e1123 Started applying config to Electron app 2019-07-29 14:13:23 +02:00
Laurent Cozic
4fe70fe8ee Ignore some files 2019-07-29 14:13:09 +02:00
Laurent Cozic
95a1f40404 Tweaked linter config 2019-07-29 14:10:07 +02:00
Laurent Cozic
88f04509ee Also added prettier config 2019-07-29 13:48:43 +02:00
Laurent Cozic
7eebd544d6 Fixed eslint 2019-07-29 12:55:50 +02:00
Laurent Cozic
e369a8decf Added eslint config 2019-07-29 12:55:39 +02:00
Helmut K. C. Tessarek
ad8054ba4b Desktop: Better handling of adding the title to print and export to PDF (#1744)
fixes #1743
2019-07-29 12:33:40 +02:00
J0J0 T
b47cb4e29a Desktop, Cli: Improved bold formatting support in Enex import (#1708)
* Dekstop,CLI: enex_to_md: add html/md test file pairs

* one pair for basic text formatting tags: strong, b, i, em
* and one using span tags with inline styles for bold formatting

Note: The html files include the Evernote-typical "linebreak tags inside of separate <div> tags"
to represent empty lines!

* Desktop,Cli: enex_to_md: support bold in span tags using inline styles

* function isSpanWithStyle() checks if further processing of a span tag
  makes sense
* function isSpanStyleBold() checks if bold formatting via styles is
  used - a similar function could be written for each span-inline-style-format
  that should be supported

* Desktop,Cli: enex_to_md: fix saving span attrs in state object

pushing attributes of span tag to state object now
happens outside of isSpanWithStyle()
2019-07-29 12:25:25 +02:00
Laurent Cozic
8c42ddf6c3 Merge branch 'master' of github.com:laurent22/joplin 2019-07-29 12:17:33 +02:00
tfinnberg
f7fcabbf41 Desktop: Create fileURLs via drag and drop (#1653)
* enable drag and drop fileURLs

* fix windows fileURL syntax

* introduce encodeURI function

* fixed encoding issue

* use path-utils.js to deal with fileURL path conversion

* add changes as requested

* Minor rewording 'On the' -> 'In the', additional info about attaching files

* change call of toFileProtocolPath

* enable test script to check syntax for all OS-platforms
2019-07-29 12:16:47 +02:00
Shane Kilkelly
38a51070fc Desktop: add depthColor for solarized light and dark themes (#1765) 2019-07-29 12:08:49 +02:00
Laurent Cozic
44fa099a77 Desktop: No longer crash if certain theme properties are not set 2019-07-29 12:05:58 +02:00
sumomo-99
af6f3999df Update ja_JP.po (#1776) 2019-07-29 11:55:02 +02:00
Laurent Cozic
6fbeb35951 Update translations 2019-07-29 11:52:19 +02:00
Laurent Cozic
b2eadffde0 Using British English by default for consistency 2019-07-29 11:51:09 +02:00
Laurent Cozic
200ba2775f All: Resolves #1459: Make translation files smaller by not including untranslated strings. Also add percentage translated to config screen. 2019-07-29 11:47:50 +02:00
Laurent Cozic
39ba021a79 Merge branch 'master' of github.com:laurent22/joplin 2019-07-29 10:12:45 +02:00
Laurent Cozic
2c6b291b9b Desktop: Only repeat failed requests up to 3 times during sync 2019-07-29 10:12:23 +02:00
Devon Zuegel
770846be2e Doc: Add docs to clarify how to test (#1775) 2019-07-29 09:42:10 +02:00
Laurent Cozic
af4aa01b75 Mobile: Upgraded packages to fix security issues 2019-07-28 23:03:54 +02:00
Laurent Cozic
1bf2bec805 CLI v1.0.141 2019-07-28 22:54:45 +02:00
Laurent Cozic
3a41ac9be0 CLI: Upgraded packages to fix security issues 2019-07-28 22:54:29 +02:00
Laurent Cozic
f2c9cdd7f1 Desktop: Upgraded packages to fix security issue 2019-07-28 22:48:30 +02:00
Laurent Cozic
058f418cc7 Tools: Do not display full release info when releasing Android app 2019-07-28 22:43:33 +02:00
Laurent Cozic
5fa84b0dfb Android release v1.0.293 2019-07-28 18:36:36 +02:00
Laurent Cozic
ec8ec3e38d Android release v1.0.292 2019-07-28 18:34:44 +02:00
Laurent Cozic
0e6190b42b Tools: Allow creating multiple Android releases 2019-07-28 18:33:48 +02:00
Laurent Cozic
fcfee36c8c Android release v1.0.291 2019-07-28 18:32:33 +02:00
Laurent Cozic
1d3d3b99bb Tools: Allow creating multiple Android releases 2019-07-28 18:31:31 +02:00
Laurent Cozic
2f80bf9647 Android release v1.0.290 2019-07-28 18:29:07 +02:00
Laurent Cozic
675a4c795f Android release v1.0.289 2019-07-28 18:22:33 +02:00
Laurent Cozic
ed3361df57 Merge branch 'master' of github.com:laurent22/joplin 2019-07-28 18:22:33 +02:00
Laurent Cozic
87396572e4 Tools: Allow creating multiple Android releases 2019-07-28 18:19:41 +02:00
Woosuk Park
143b610291 Korean Language Support (#1769)
* Korean Language Support

Korean Language 100% Translated, but something is roughted. soon fix it ;)

* some improved

Some Improved

* Improve v2

some polished

* Ok, now Completed

For Now, Completed Polish(Change Respect of Users, and several fixing & polishing) + 100% Translated. Ready to Shipping
2019-07-26 23:18:47 -04:00
Laurent Cozic
c952c4591f Android release v1.0.284 2019-07-26 23:11:08 +02:00
Laurent Cozic
e418701e68 Mobile: Fixes #1764 (maybe): Upgrading React-Native to 0.59.10 to try to fix crash in certain Samsung phone due to 64-bit version
See also:

https://github.com/facebook/react-native/issues/24261#issuecomment-514332549
2019-07-26 23:08:11 +02:00
Laurent Cozic
6fc0ee3062 Android release v1.0.283 2019-07-26 21:26:24 +02:00
Laurent Cozic
7b42d7d2c8 Mobile: Fixed freeze when last notebook was the conflict one and there are no longer any conflicted notes 2019-07-26 21:23:18 +02:00
Mr. Traduttore
eb083ae925 [Mobile/Desktop] Changed cancel, directory and delete translations (ITALIAN) (#1759)
* Changed cancel and delete translation (ITALIAN)

Changed cancel from "cancellare" to "annullare" (whic is used more to express the cancelling operations) and delete from "cancellare" to "eliminare". I think that doing this will help people understanding what is the main task of these option since they use the same verbs in the current translation.

* Update it_IT.po
2019-07-22 14:15:11 +01:00
Helmut K. C. Tessarek
905e65365f Update en_US.po 2019-07-22 06:28:04 -04:00
Helmut K. C. Tessarek
a0c04c0e6a Update de_DE.po 2019-07-22 06:27:55 -04:00
Laurent Cozic
635baa5b6f Updated translations 2019-07-22 00:02:25 +00:00
Laurent Cozic
7591b614c5 typos 2019-07-21 22:27:13 +00:00
Helmut K. C. Tessarek
5b5ec682c0 Update en_US.po 2019-07-21 22:18:35 -04:00
Helmut K. C. Tessarek
b0a80ddf65 Update de_DE.po 2019-07-21 22:17:25 -04:00
Laurent Cozic
893531f8c7 Desktop: Make depthColor theme property optional 2019-07-21 17:30:36 +01:00
Shane Kilkelly
3d498e7a75 Desktop: Add solarized themes to desktop client (#1733) 2019-07-21 17:27:42 +01:00
Laurent Cozic
45ad201132 Mobile: Fixed colour of placeholder text in dark theme 2019-07-21 17:16:15 +01:00
Laurent Cozic
6e64b950ca Merge branch 'master' of github.com:laurent22/joplin 2019-07-21 17:05:09 +01:00
Laurent Cozic
6d4e67769c Desktop: Fixed Back button icon on Config screen 2019-07-21 16:49:53 +01:00
Laurent Cozic
3aa0394062 Mobile: Fixes #1684: Trying to fix problem when attaching file that contains spaces in name 2019-07-21 14:39:52 +01:00
Laurent Cozic
b65767a43c Mobile: Fixes #1746: Populate note side menu when swiping right 2019-07-21 14:11:30 +01:00
Laurent Cozic
3a9817d11e Android release v1.0.282 2019-07-21 14:04:18 +01:00
Laurent Cozic
6a42ef50ec All: Fixes #1732: Fixed note order when dragging a note outside a notebook 2019-07-21 13:55:25 +01:00
Laurent Cozic
35b6b3fc46 Merge branch 'clipper_html_mode' 2019-07-21 13:46:54 +01:00
Laurent Cozic
f5515e3496 Doc: Fixed template doc 2019-07-21 09:07:33 +01:00
Laurent Cozic
fd509bb4af Doc: Fixed template table 2019-07-21 08:57:50 +01:00
Laurent Cozic
b21c0f5d69 Doc: Fixed website templating 2019-07-21 08:55:44 +01:00
Laurent Cozic
1033b3626f Update translations 2019-07-21 08:49:49 +01:00
Laurent Cozic
f407c8d756 Added Serbian translation - thanks Željko! 2019-07-21 08:19:32 +01:00
Laurent Cozic
6436dff94b Api: Fixed handling of markup language 2019-07-21 00:31:29 +01:00
Laurent Cozic
3f7b4e10b6 Merge branch 'master' into clipper_html_mode 2019-07-21 00:24:25 +01:00
Laurent Cozic
36168a9a5d Use regex instead of jsdom for compability with mobile app 2019-07-21 00:18:51 +01:00
Helmut K. C. Tessarek
118540c733 add config for stale bot 2019-07-20 17:41:49 -04:00
Caleb John
cd5d412c69 Desktop: Added support for templates (#1647)
* First pass of adding support for templates

* remove default value from template prompt

* Add template placeholder text

* Add mustache templates with datetime support for new notes

* Moved template code to utils, added separate prompt for templates

* Add templates to menu and allow for keyboad only use

* update template prompt for dark theme

* update with laurents suggestions, add refresh button

* revert template command, remove new note prompt
2019-07-20 22:13:10 +01:00
Helmut K. C. Tessarek
e29fb3eb66 new issue templates 2019-07-19 15:01:32 -04:00
Laurent Cozic
8ff1668c8f Minor changes 2019-07-19 18:18:05 +01:00
Laurent Cozic
14fc73b388 Use markupToHtml everywhere 2019-07-19 17:48:38 +01:00
Laurent Cozic
f34330f101 Doc: Contributor list on rows of 5 2019-07-18 20:46:01 +01:00
Laurent Cozic
2ba50321d4 Doc: Added contributors 2019-07-18 18:36:29 +01:00
Laurent Cozic
38177c7e54 All: Optimised loading of multiple items 2019-07-17 22:50:12 +01:00
Laurent Cozic
687e308a73 Desktop: Added markup language to property dialog 2019-07-17 22:49:40 +01:00
Laurent Cozic
490db0db62 Desktop: Disable Markdown actions for HTML notes 2019-07-17 22:49:12 +01:00
Laurent Cozic
feb5f17479 Clipper: Generate better HTML so that it loads faster in text editor 2019-07-17 22:48:13 +01:00
Laurent Cozic
fbb3543818 Desktop: Fixed race condition when loading a note while another one is still loading. Improved performance when loading large note. 2019-07-17 22:42:53 +01:00
Laurent Cozic
30d0dfb424 Clipper: Fixed sizing issue when importing HTML pages 2019-07-16 22:58:44 +01:00
Laurent Cozic
7239a2013c Clipper: Improved clipping of images in HTML mode 2019-07-16 22:23:04 +01:00
Laurent Cozic
2361c5a5e7 Clipper: Better handling of images when multiple images have the same source but with different dimensions 2019-07-16 21:47:44 +01:00
Laurent Cozic
38e8a881d5 More refactoring to easily handle multiple renderers 2019-07-16 19:05:47 +01:00
Helmut K. C. Tessarek
d45d1b4225 Mobile: Show correct time/date (as specified in settings) for note properties (#1749) 2019-07-16 15:11:58 +01:00
Helmut K. C. Tessarek
e9c88dfdc4 Update de_DE.po 2019-07-15 23:21:46 -04:00
Laurent Cozic
fbb0ac5892 Clipper: Refactored image rules to re-use more code 2019-07-15 20:43:28 +00:00
Helmut K. C. Tessarek
7a902bbd25 Desktop, Mobile: Update Markdown plugins: footnote, toc-done-right, anchor (#1741) 2019-07-15 01:29:44 +01:00
Laurent Cozic
c75618eb8f Clipper: Minor fixes 2019-07-15 01:17:17 +01:00
Laurent Cozic
74ee629266 Clipper: Fixed issue with relative links when importing HTML 2019-07-15 00:44:45 +01:00
Caleb John
8ecc58e1bf Desktop: Add support for cinnamon to install script (#1738) 2019-07-15 00:29:09 +01:00
Laurent Cozic
71078637db Android release v1.0.281 2019-07-14 19:56:46 +01:00
Laurent Cozic
5460a977b1 Clipper: Fixed issues related to viewing images and to HTML comments that were incorrectly being displayed 2019-07-14 19:52:57 +01:00
Laurent Cozic
a0dd0702fb Clipper: Adding support for clipping page as HTML 2019-07-14 16:00:02 +01:00
Laurent Cozic
3e48992eb4 Clipper: Disabled preview for now as too many problems with it and not so useful 2019-07-14 09:46:06 +01:00
Laurent Cozic
bdb31f2890 Mobile: Fixed issue that could slow down app when displaying large list of notes 2019-07-13 23:55:28 +01:00
Laurent Cozic
0255546ae1 Mobile: Auto-save after toggling to-do state 2019-07-13 23:49:35 +01:00
Laurent Cozic
d066350eea Electron release v1.0.161 2019-07-13 19:18:34 +01:00
Laurent Cozic
a1e3260309 Clipper: Resolves #1160: Allow importing MathJax formulas, in particular from StackExchange 2019-07-13 19:17:28 +01:00
Laurent Cozic
be1f57a8a6 Desktop: Fixes #1727: Keep back button when opening a note link from the search results 2019-07-13 17:58:59 +01:00
Laurent Cozic
ca4dfe0f0f Desktop: Fixes #1724: Improved note selection and scrolling when moving a note to a different notebook 2019-07-13 17:40:09 +01:00
Laurent Cozic
fa69957d3f Desktop, CLI: Fixes #1723: Import Evernote audio files correctly 2019-07-13 17:26:47 +01:00
Laurent Cozic
f7203ed7e2 Desktop: Fixes #1720: Fixed issue with certain commands being repeated in some cases 2019-07-13 16:57:33 +01:00
Laurent Cozic
331858bd4f Desktop: Fixes #1704: Set note title to correct size when zoom is enabled 2019-07-13 16:46:52 +01:00
Laurent Cozic
4d2c9523a3 Desktop: Fixes #1699: Hide toolbar button text when it is below a certain size 2019-07-13 16:42:57 +01:00
Laurent Cozic
4d9d84a8f3 Merge branch 'master' of github.com:laurent22/joplin 2019-07-13 15:58:06 +01:00
Laurent Cozic
ec1089870f All: Fixes #1694: When deleting resource from sync target also delete associated data blob 2019-07-13 15:57:53 +01:00
Helmut K. C. Tessarek
dbedefc021 Desktop: Fixes #1342: Add override for ACE editor shortcut Ctrl+K (#1705) 2019-07-13 14:52:32 +01:00
Kirill Goncharov
f6b0da3f5e Android: Check filesystem permission if filesystem sync target is selected (#1665)
* Android: Check filesystem permission if filesystem sync target is selected

* Android: Change permission error text, don't prevent user from saving settings
2019-07-13 14:51:54 +01:00
Laurent Cozic
85bf89fd97 Android release v1.0.279 2019-07-12 19:44:23 +01:00
Laurent Cozic
c2a80b12f0 Mobile: More rendering optimisations to make animations smoother and to allow typing fast on large notes 2019-07-12 19:36:12 +01:00
Laurent Cozic
981c97cca5 Mobile: Optimising screen rendering to make text input faster 2019-07-12 18:32:08 +01:00
Laurent Cozic
091cbc5355 Mobile: Added sync button animation; Added notebook header; Improved layout of Edit Notebook screen 2019-07-12 18:07:47 +01:00
Laurent Cozic
e5a8114887 Mobile: Added icons to left sidebar 2019-07-11 18:44:26 +01:00
Laurent Cozic
4779fc6f43 Mobile: Remove search and side menu button from config screen 2019-07-11 18:26:04 +01:00
Laurent Cozic
86e7daaec4 Mobile: Cleaned context menu and moved options and metadata to side menu bar 2019-07-11 18:23:29 +01:00
Laurent Cozic
cab73a26e7 Mobile: Adding note side menu 2019-07-11 17:43:55 +01:00
Laurent Cozic
554ddb3b51 Mobile: Grouped file attachment action under one menu 2019-07-11 17:41:13 +01:00
Laurent Cozic
3b22bdb8ae Doc: Fixed Linux install command line for website 2019-07-10 18:18:31 +01:00
Laurent Cozic
5fdd07679e All: Fix: Only log master key ID 2019-07-10 17:35:08 +01:00
Laurent Cozic
69f75a1520 Doc: Updated old links 2019-07-10 17:00:10 +01:00
Laurent Cozic
f9b7acb8b1 Merge branch 'master' of github.com:laurent22/joplin 2019-07-10 16:41:20 +01:00
Laurent Cozic
91f700ad54 Doc: Updated email addresses 2019-07-10 16:41:13 +01:00
Robert
966aca7753 Update nl_NL.po (#1709)
* Update nl_NL.po

* Added ampersands to main menu items 

for the nl-nl translation
2019-07-05 13:00:53 -04:00
Helmut K. C. Tessarek
4de8816ed5 Merge pull request #1710 from Marmo/Marmo-translation-20190705
Translation: minor fixes (de_DE)
2019-07-05 11:26:32 -04:00
Marmo
bea68a1056 Minor translation fixes (de_DE) 2019-07-05 13:54:11 +02:00
Laurent Cozic
6fea7116b6 Mobile: Removed now unneeded Welcome screen 2019-06-29 00:24:00 +01:00
Laurent Cozic
2955914ca5 Mobile: Fixes #1690 (maybe): Process less data simultaneously when building search index to prevent out of memory errors 2019-06-28 23:49:43 +01:00
Laurent Cozic
fd150b5b9d Update website 2019-06-28 16:08:50 +01:00
Laurent Cozic
334ffad196 Doc: Added link to Mastodon feed 2019-06-28 16:04:05 +01:00
Charles
a796a9d179 API: Support is_todo property to allow making a note a todo (#1688) 2019-06-28 13:46:55 +01:00
Helmut K. C. Tessarek
917dcea28a use a command to get the current branch that works with older git versions
closes #1695
2019-06-28 05:02:21 -04:00
Laurent Cozic
c901228dc5 Merge branch 'master' of github.com:laurent22/joplin 2019-06-28 00:51:14 +01:00
Laurent Cozic
da21580785 Mobile: Added 'All notes' screen; Cleaned up header bar buttons; Removed 'body' from note preview object to improve memory usage 2019-06-28 00:51:02 +01:00
Laurent Cozic
4d92187327 Mobile: Added button to fix search engine index 2019-06-28 00:48:52 +01:00
Helmut K. C. Tessarek
207d433fb3 Desktop: Improved: Show git branch and hash in About dialog (#1692)
* show git branch and hash in About dialog

This additional info will only be shown, if the code is not an official release.

An official release is calculated as follows:
- current commit has a tag
- the tag contains the version number of the package

However, the information will always be printed to the console.

* info will now always be shown in About dialog (if available)

ElectronClient/app/compile-package-info.js: added warning
ElectronClient/app/app.js: push info conditionally to the message array

* use sprintf syntax
2019-06-27 15:04:02 +01:00
Laurent Cozic
ffc311d7bd Mobile: Moved slider value to the left so that it is visible while dragging 2019-06-27 00:05:17 +01:00
Laurent Cozic
a1e8e71359 Mobile: Added auto-save 2019-06-26 23:26:26 +01:00
Laurent Cozic
7942e74dc6 Mobile: Fixed field focus logic 2019-06-26 23:21:12 +01:00
Laurent Cozic
c4e21c2b6a Mobile: Added placeholders for note title and body, and focus body by default for notes 2019-06-26 23:00:25 +01:00
Laurent Cozic
0a06aa6f9f Mobile: When inside a note, do not show side menu and search buttons 2019-06-26 22:54:09 +01:00
Laurent Cozic
f985cfa25c Mobile: Removed arrow icon as it is rendered weirdly on device 2019-06-26 18:51:12 +01:00
Laurent Cozic
6e143aef5c Android release v1.0.277 2019-06-26 18:40:43 +01:00
Laurent Cozic
bf16aa6192 All: Better logging in case of error while indexing search 2019-06-26 18:36:42 +01:00
Laurent Cozic
d96c58d192 Mobile: Edit and delete notebooks by long-pressing them, and removed context menu on note lists 2019-06-26 18:28:09 +01:00
Laurent Cozic
e7e0264411 Mobile: Improved side menu: Made button panel fixed at the bottom, and added dark overlay over right side content 2019-06-26 18:05:37 +00:00
Laurent Cozic
430a11282b Mobile: Moved 'New notebook' button to sidebar 2019-06-26 01:10:15 +01:00
Laurent Cozic
9957b2798c Mobile: Moved config menu item to button on side bar 2019-06-26 00:35:26 +01:00
Laurent Cozic
2c5b0010bf Mobile: Removed concept of Advanced Options and move tools to Config screen to clean up context menu 2019-06-26 00:13:13 +01:00
Laurent Cozic
1e3c6ed98c Desktop: When doing local search do not split query into words 2019-06-25 23:09:53 +01:00
Laurent Cozic
484f290eb0 Clipper: Improved clipping selection by removing unecessary elements 2019-06-25 22:11:12 +01:00
Helmut K. C. Tessarek
06ad539941 Clipper release v1.0.17 2019-06-23 23:23:07 -04:00
Laurent Cozic
5b84e80ac4 Clipper: Fixes #1214: Include data from form fields when clipping forms 2019-06-24 00:57:39 +01:00
Laurent Cozic
ca0f349348 Merge branch 'master' of github.com:laurent22/joplin 2019-06-24 00:00:24 +01:00
Laurent Cozic
d79089aea3 Clipper: Fixes #1682: Do not clip elements that should be hidden 2019-06-24 00:00:11 +01:00
Eugene Odeluga
03611ad5ca Desktop: For Ubuntu users, added unity to if condition for desktop icon creation (#1683) 2019-06-23 22:24:58 +01:00
Helmut K. C. Tessarek
c78c1cd3cf Clipper release v1.0.16 2019-06-23 03:06:34 -04:00
水货
55afa7b5b7 Update zh_CN.po (#1681) 2019-06-23 03:00:41 -04:00
Laurent Cozic
a6c407b62b Doc: Mentioned Goto Anything feature 2019-06-22 19:06:54 +01:00
Laurent Cozic
21897a3cd4 Clipper: Resolves #1669: Handle special case of code block used on Microsoft website 2019-06-22 18:57:41 +01:00
Laurent Cozic
5796dd2098 Update translations 2019-06-22 13:10:13 +01:00
abonte
d050071437 update it_IT.po (#1680) 2019-06-22 12:45:35 +01:00
Laurent Cozic
eaf8510f49 Doc: Added requirement for unit tests 2019-06-22 12:44:31 +01:00
Laurent Cozic
6ee2595dce Desktop: Fixes #1676: Preserve user timestamps when adding note via API 2019-06-22 12:31:04 +01:00
Laurent Cozic
0ecf2d6d9a Merge branch 'master' of github.com:laurent22/joplin 2019-06-22 11:23:35 +01:00
Laurent Cozic
50fd075168 Desktop, CLI: Fixes #1672: Fix line break issue when importing certain notes from Evernotes 2019-06-22 11:23:22 +01:00
Helmut K. C. Tessarek
6fa76bb83a fix minor typo in README.md 2019-06-21 23:58:44 -04:00
Laurent Cozic
b175c1fc94 Desktop: Resolves #1649: Cache code blocks in notes to speed up rendering 2019-06-21 08:28:59 +01:00
Caleb John
b461625518 Desktop: Fixed issue with issue with watching file on Linux (#1659)
Watch for rename events in the external editor and re-watch file
2019-06-20 00:44:51 +01:00
Laurent Cozic
3819897ba1 Merge branch 'master' of github.com:laurent22/joplin 2019-06-20 00:02:29 +01:00
Laurent Cozic
6a031857ba Desktop: Fixes #1664: Disable certain menu items when no note or multiple notes are selected, and fixed menu item to set tag 2019-06-20 00:02:13 +01:00
Laurent Cozic
0e57b7eb46 iOS v10.0.36 2019-06-19 23:22:35 +01:00
Laurent Cozic
e21a0ba5b7 Update translations 2019-06-19 23:18:24 +01:00
Laurent Cozic
78f731e616 Merge branch 'master' of github.com:laurent22/joplin 2019-06-19 23:16:45 +01:00
Laurent Cozic
f6688a65ae iOS: Fixed bug that was preventing images from displaying 2019-06-19 23:16:37 +01:00
Laurent Cozic
035b9c6d1a Android: This is now needed to build the app 2019-06-19 21:51:22 +01:00
Laurent Cozic
266ff244d9 Revert "Mobile: Added button to clear local sync state"
Can cause too many issues.

This reverts commit 6ce091f4d8.
2019-06-19 21:50:26 +01:00
Laurent Cozic
de1bfa5c34 Android release v1.0.276 2019-06-19 15:08:44 +01:00
Laurent Cozic
478b8f00d8 Fix release script 2019-06-19 15:04:46 +01:00
Laurent Cozic
860d2fd7f5 Merge branch 'master' of github.com:laurent22/joplin 2019-06-19 15:04:16 +01:00
Laurent Cozic
6ce091f4d8 Mobile: Added button to clear local sync state 2019-06-19 14:57:59 +01:00
Laurent Cozic
ce595ac5e4 Mentioned that it works on FreeBSD 2019-06-19 12:29:15 +01:00
Laurent Cozic
267436a00d Merge pull request #1660 from delta-emil/bulgarian-translation
Localization: add bulgarian
2019-06-18 22:54:52 +01:00
Helmut K. C. Tessarek
97e0f4258a Update localization en_US.po 2019-06-18 12:32:56 -04:00
delta-emil
faa6ccc150 add bulgarian translation 2019-06-16 23:39:20 +03:00
Laurent Cozic
349cade946 All: Optimised resource download queue by exiting early if resources are already downloaded 2019-06-15 21:48:37 +01:00
Laurent Cozic
0200aa92de Doc: Added doc for resource download mode 2019-06-15 21:28:31 +01:00
Laurent Cozic
60ed2cbee5 Mobile: Fixed bug where photo was not displayed just after having taken it 2019-06-15 21:23:30 +01:00
Laurent Cozic
0e7b2f36c8 Fixing release process for Android 2019-06-15 18:58:09 +01:00
Laurent Cozic
4083221b21 Android: Added support for 64-bit hardware 2019-06-15 18:48:07 +01:00
Laurent Cozic
d55c511b4a iOS v10.0.35 2019-06-15 18:18:17 +01:00
Laurent Cozic
7863e1dffe Update website 2019-06-15 10:27:44 +01:00
504 changed files with 31580 additions and 13649 deletions

41
.eslintignore Normal file
View File

@@ -0,0 +1,41 @@
*.min.js
.git/
.github/
_mydocs/
_releases/
Assets/
CliClient/build
CliClient/locales
CliClient/node_modules
CliClient/tests-build
CliClient/tests/enex_to_md
CliClient/tests/html_to_md
CliClient/tests/logs
CliClient/tests/support
CliClient/tests/sync
CliClient/tests/tmp
Clipper/joplin-webclipper/content_scripts/JSDOMParser.js
Clipper/joplin-webclipper/content_scripts/Readability-readerable.js
Clipper/joplin-webclipper/content_scripts/Readability.js
Clipper/joplin-webclipper/dist
Clipper/joplin-webclipper/icons
Clipper/joplin-webclipper/popup/build
Clipper/joplin-webclipper/popup/node_modules
docs/
ElectronClient/app/dist
ElectronClient/app/lib
ElectronClient/app/lib/vendor/sjcl-rn.js
ElectronClient/app/lib/vendor/sjcl.js
ElectronClient/app/locales
ElectronClient/app/node_modules
highlight.pack.js
node_modules/
ReactNativeClient/android
ReactNativeClient/ios
ReactNativeClient/lib/vendor/
ReactNativeClient/lib/welcomeAssets.js
ReactNativeClient/locales
ReactNativeClient/node_modules
readme/
Tools/node_modules
Tools/PortableAppsLauncher

53
.eslintrc.js Normal file
View File

@@ -0,0 +1,53 @@
module.exports = {
'env': {
'browser': true,
'es6': true,
'node': true,
},
'extends': ['eslint:recommended'],
'globals': {
'Atomics': 'readonly',
'SharedArrayBuffer': 'readonly',
// Jasmine variables
'expect': 'readonly',
'describe': 'readonly',
'it': 'readonly',
'beforeEach': 'readonly',
'jasmine': 'readonly',
// React Native variables
'__DEV__': 'readonly',
// Clipper variables
'browserSupportsPromises_': true,
'chrome': 'readonly',
'browser': 'readonly',
},
'parserOptions': {
'ecmaVersion': 2018,
"ecmaFeatures": {
"jsx": true,
},
"sourceType": "module",
},
'rules': {
"react/jsx-uses-react": "error",
"react/jsx-uses-vars": "error",
// Ignore all unused function arguments, because in some
// case they are kept to indicate the function signature.
"no-unused-vars": ["error", { "argsIgnorePattern": ".*" }],
"no-constant-condition": 0,
"no-prototype-builtins": 0,
"space-in-parens": ["error", "never"],
"semi": ["error", "always"],
"eol-last": ["error", "always"],
"quotes": ["error", "single"],
"indent": ["error", "tab"],
"comma-dangle": ["error", "always-multiline"],
"no-trailing-spaces": "error",
},
"plugins": [
"react",
],
};

1
.github/FUNDING.yml vendored
View File

@@ -1,4 +1,5 @@
# These are supported funding model platforms # These are supported funding model platforms
patreon: joplin patreon: joplin
github: laurent22
custom: https://joplinapp.org/donate/ custom: https://joplinapp.org/donate/

4
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,4 @@
👉 Please follow one of these issue templates:
- https://github.com/laurent22/joplin/issues/new/choose
Note: to keep the backlog clean and actionable, issues may be immediately closed if they do not follow one of the above issue templates.

48
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,48 @@
---
name: "🐛 Bug Report"
about: Report a reproducible bug or regression in Joplin.
title: ''
labels: 'bug'
---
<!--
Please provide a clear and concise description of what the bug is. (In the section Steps To Reproduce.)
Include screenshots if needed.
Please test using the latest Joplin release to make sure your issue has not already been fixed.
-->
<!--
IMPORTANT: If you are reporting a clipper bug, please include an example URL that shows the issue.
Without the URL the issue is likely to be closed.
-->
## Environment
Joplin version:
Platform:
OS specifcs:
<!--
Platform can be one of: macOS, Linux, Windows, Android, iOS, terminal (or a combination)
OS specifcs: e.g. OS version, Linux distribution, Android/iOS version, ...
-->
## Steps To Reproduce
1.
2.
<!--
Issues without reproduction steps are likely to stall.
-->
Describe what you expected to happen:
## Logfile
<!--
Please attach a debug log. Issues without a debug log are likely to stall.
For information on how to collect a log file: https://joplinapp.org/debugging/
-->

View File

@@ -0,0 +1,20 @@
---
name: Feature request
about: Report an accepted feature request.
title: '[Feature request] '
labels: 'feature request'
---
<!--
Please search open issues first - many features have already been requested!
-->
🚨 A feature request that has not been accepted on the forum will be closed! 🚨
## Has it been discussed in the forum? Link to topic.
<!--
Feature requests must be discussed and accepted in the forum first. https://discourse.joplinapp.org
Please provide a link to the topic.
Feature requests without a link to the discussion/topic on the forum will be closed.
-->

29
.github/ISSUE_TEMPLATE/question.md vendored Normal file
View File

@@ -0,0 +1,29 @@
---
name: "🤔 Questions and Help"
about: The issue tracker is not for questions. Please ask questions on https://discourse.joplinapp.org/.
title: 'Question: '
labels: 'question'
---
🚨 The issue tracker is not for questions. 🚨
As it happens, support requests that are created as issues are likely to be closed. We want to make sure you are able to find the help you seek.
## Questions and Help
Please read the [documentation](https://joplinapp.org/) and [FAQ](https://joplinapp.org/faq/) first.
### https://discourse.joplinapp.org/
If you have still questions related to Joplin, please open a topic in the [forum](https://discourse.joplinapp.org/).
You can use your GitHub credentials to login to the forum.
## Links
- Documentation: https://joplinapp.org
- FAQ: https://joplinapp.org/faq/
- Forum: https://discourse.joplinapp.org
- How to enable end-to-end encryption: https://joplinapp.org/e2ee/
- API documentation: https://joplinapp.org/api/
- How to enable debug mode: https://joplinapp.org/debugging/

25
.github/stale.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 90
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- "good first issue"
- "essential"
- "essential-reviewed"
- "help wanted"
- "nice to have"
- "upstream"
- "backlog"
# Label to use when marking an issue as stale
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs.
You may also label this issue as "backlog" and I will leave it open.
Thank you for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: >
Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information.
only: issues

View File

@@ -58,4 +58,4 @@ script:
npm install npm install
cd ../ElectronClient/app cd ../ElectronClient/app
rsync -aP --delete ../../ReactNativeClient/lib/ lib/ rsync -aP --delete ../../ReactNativeClient/lib/ lib/
npm install && yarn dist npm install && USE_HARD_LINKS=false yarn dist

Binary file not shown.

Before

Width:  |  Height:  |  Size: 986 B

BIN
Assets/AdresseSupport.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

View File

@@ -16,10 +16,12 @@ File bugs in the [Github Issue Tracker](https://github.com/laurent22/joplin/issu
Please check that your request has not already been posted in the [Github Issue Tracker](https://github.com/laurent22/joplin/issues?utf8=%E2%9C%93&q=is%3Aissue). If it has, **up-voting the issue** increases the chances it'll be noticed and implemented in the future. "+1" comments are not tracked. Please check that your request has not already been posted in the [Github Issue Tracker](https://github.com/laurent22/joplin/issues?utf8=%E2%9C%93&q=is%3Aissue). If it has, **up-voting the issue** increases the chances it'll be noticed and implemented in the future. "+1" comments are not tracked.
As a general rule, suggestions to _improve Joplin_ should be posted first in the [Joplin Forum](https://discourse.joplinapp.org/) for discussion. As a general rule, suggestions to *improve Joplin* should be posted first in the [Joplin Forum](https://discourse.joplinapp.org/) for discussion.
Avoid listing multiple requests in one report in the [Github Issue Tracker](https://github.com/laurent22/joplin/issues?utf8=%E2%9C%93&q=is%3Aissue). One issue per request makes it easier to track and discuss it. Avoid listing multiple requests in one report in the [Github Issue Tracker](https://github.com/laurent22/joplin/issues?utf8=%E2%9C%93&q=is%3Aissue). One issue per request makes it easier to track and discuss it.
Finally, when submitting a pull request, don't forget to [test your code](#unit-tests).
# Contribute to the project # Contribute to the project
## Contributing to Joplin's translation ## Contributing to Joplin's translation
@@ -38,7 +40,34 @@ Building the apps is relatively easy - please [see the build instructions](https
## Coding style ## 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): Coding style is enforced by a pre-commit hook that runs eslint. This hook is installed whenever running `npm install` on any of the application directory. If for some reason the pre-commit hook didn't get installed, you can manually install it by running `npm install` at the root of the repository.
- **Please use tabs, NOT spaces.** ## Unit tests
- **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.
When submitting a pull request for a new feature or bug fix, please add unit tests for your code. Unit testing GUI changes is not always possible so it is not required, but any change in a file under /lib for example should be unit tested.
The tests are under CliClient/tests. To get them running, you first need to build the CLI app:
cd CliClient
npm i
To run the test units, you must have an instance of the cli app running. In a first window navigate into `CliClient` and run:
```sh
./run.sh
```
> If you get an error like `Error: Cannot find module '../locales/index.js'`, this means you must (a) rebuild translations or (b) take > them from one of the other apps. To do option b, you can run the following command to copy them from the `ReactNativeClient` directory:>
>
> ```sh
> cd .. # Return to the root of the project
> rsync -aP ./ReactNativeClient/locales/ ./CliClient/build/locales/
> ```
Then run the tests in a second window. To run all the test units:
./run_test.sh
To run just one particular file:
./run_test.sh markdownUtils # Don't add the .js extension

View File

@@ -1,14 +1,11 @@
const { _ } = require('lib/locale.js');
const { Logger } = require('lib/logger.js'); const { Logger } = require('lib/logger.js');
const Resource = require('lib/models/Resource.js');
const { netUtils } = require('lib/net-utils.js'); const { netUtils } = require('lib/net-utils.js');
const http = require("http"); const http = require('http');
const urlParser = require("url"); const urlParser = require('url');
const enableServerDestroy = require('server-destroy'); const enableServerDestroy = require('server-destroy');
class ResourceServer { class ResourceServer {
constructor() { constructor() {
this.server_ = null; this.server_ = null;
this.logger_ = new Logger(); this.logger_ = new Logger();
@@ -40,7 +37,7 @@ class ResourceServer {
async start() { async start() {
this.port_ = await netUtils.findAvailablePort([9167, 9267, 8167, 8267]); this.port_ = await netUtils.findAvailablePort([9167, 9267, 8167, 8267]);
if (!this.port_) { if (!this.port_) {
this.logger().error('Could not find available port to start resource server. Please report the error at https://github.com/laurent22/joplin'); this.logger().error('Could not find available port to start resource server. Please report the error at https://github.com/laurent22/joplin');
return; return;
} }
@@ -48,11 +45,10 @@ class ResourceServer {
this.server_ = http.createServer(); this.server_ = http.createServer();
this.server_.on('request', async (request, response) => { this.server_.on('request', async (request, response) => {
const writeResponse = message => {
const writeResponse = (message) => {
response.write(message); response.write(message);
response.end(); response.end();
} };
const url = urlParser.parse(request.url, true); const url = urlParser.parse(request.url, true);
let resourceId = url.pathname.split('/'); let resourceId = url.pathname.split('/');
@@ -69,6 +65,7 @@ class ResourceServer {
if (!done) throw new Error('Unhandled resource: ' + resourceId); if (!done) throw new Error('Unhandled resource: ' + resourceId);
} catch (error) { } catch (error) {
response.setHeader('Content-Type', 'text/plain'); response.setHeader('Content-Type', 'text/plain');
// eslint-disable-next-line require-atomic-updates
response.statusCode = 400; response.statusCode = 400;
response.write(error.message); response.write(error.message);
} }
@@ -76,7 +73,7 @@ class ResourceServer {
response.end(); response.end();
}); });
this.server_.on('error', (error) => { this.server_.on('error', error => {
this.logger().error('Resource server:', error); this.logger().error('Resource server:', error);
}); });
@@ -91,7 +88,6 @@ class ResourceServer {
if (this.server_) this.server_.destroy(); if (this.server_) this.server_.destroy();
this.server_ = null; this.server_ = null;
} }
} }
module.exports = ResourceServer; module.exports = ResourceServer;

View File

@@ -5,13 +5,12 @@ const Tag = require('lib/models/Tag.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const Resource = require('lib/models/Resource.js'); const Resource = require('lib/models/Resource.js');
const { cliUtils } = require('./cli-utils.js');
const { reducer, defaultState } = require('lib/reducer.js'); const { reducer, defaultState } = require('lib/reducer.js');
const { splitCommandString } = require('lib/string-utils.js'); const { splitCommandString } = require('lib/string-utils.js');
const { reg } = require('lib/registry.js'); const { reg } = require('lib/registry.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const Entities = require('html-entities').AllHtmlEntities; const Entities = require('html-entities').AllHtmlEntities;
const htmlentities = (new Entities()).encode; const htmlentities = new Entities().encode;
const chalk = require('chalk'); const chalk = require('chalk');
const tk = require('terminal-kit'); const tk = require('terminal-kit');
@@ -20,12 +19,10 @@ const Renderer = require('tkwidgets/framework/Renderer.js');
const DecryptionWorker = require('lib/services/DecryptionWorker'); const DecryptionWorker = require('lib/services/DecryptionWorker');
const BaseWidget = require('tkwidgets/BaseWidget.js'); const BaseWidget = require('tkwidgets/BaseWidget.js');
const ListWidget = require('tkwidgets/ListWidget.js');
const TextWidget = require('tkwidgets/TextWidget.js'); const TextWidget = require('tkwidgets/TextWidget.js');
const HLayoutWidget = require('tkwidgets/HLayoutWidget.js'); const HLayoutWidget = require('tkwidgets/HLayoutWidget.js');
const VLayoutWidget = require('tkwidgets/VLayoutWidget.js'); const VLayoutWidget = require('tkwidgets/VLayoutWidget.js');
const ReduxRootWidget = require('tkwidgets/ReduxRootWidget.js'); const ReduxRootWidget = require('tkwidgets/ReduxRootWidget.js');
const RootWidget = require('tkwidgets/RootWidget.js');
const WindowWidget = require('tkwidgets/WindowWidget.js'); const WindowWidget = require('tkwidgets/WindowWidget.js');
const NoteWidget = require('./gui/NoteWidget.js'); const NoteWidget = require('./gui/NoteWidget.js');
@@ -37,7 +34,6 @@ const StatusBarWidget = require('./gui/StatusBarWidget.js');
const ConsoleWidget = require('./gui/ConsoleWidget.js'); const ConsoleWidget = require('./gui/ConsoleWidget.js');
class AppGui { class AppGui {
constructor(app, store, keymap) { constructor(app, store, keymap) {
try { try {
this.app_ = app; this.app_ = app;
@@ -50,12 +46,12 @@ class AppGui {
// Some keys are directly handled by the tkwidget framework // Some keys are directly handled by the tkwidget framework
// so they need to be remapped in a different way. // so they need to be remapped in a different way.
this.tkWidgetKeys_ = { this.tkWidgetKeys_ = {
'focus_next': 'TAB', focus_next: 'TAB',
'focus_previous': 'SHIFT_TAB', focus_previous: 'SHIFT_TAB',
'move_up': 'UP', move_up: 'UP',
'move_down': 'DOWN', move_down: 'DOWN',
'page_down': 'PAGE_DOWN', page_down: 'PAGE_DOWN',
'page_up': 'PAGE_UP', page_up: 'PAGE_UP',
}; };
this.renderer_ = null; this.renderer_ = null;
@@ -64,7 +60,7 @@ class AppGui {
this.renderer_ = new Renderer(this.term(), this.rootWidget_); this.renderer_ = new Renderer(this.term(), this.rootWidget_);
this.app_.on('modelAction', async (event) => { this.app_.on('modelAction', async event => {
await this.handleModelAction(event.action); await this.handleModelAction(event.action);
}); });
@@ -83,7 +79,7 @@ class AppGui {
reg.setupRecurrentSync(); reg.setupRecurrentSync();
DecryptionWorker.instance().scheduleStart(); DecryptionWorker.instance().scheduleStart();
} catch (error) { } catch (error) {
this.fullScreen(false); if (this.term_) { this.fullScreen(false); }
console.error(error); console.error(error);
process.exit(1); process.exit(1);
} }
@@ -134,7 +130,7 @@ class AppGui {
}; };
folderList.name = 'folderList'; folderList.name = 'folderList';
folderList.vStretch = true; folderList.vStretch = true;
folderList.on('currentItemChange', async (event) => { folderList.on('currentItemChange', async event => {
const item = folderList.currentItem; const item = folderList.currentItem;
if (item === '-') { if (item === '-') {
@@ -169,7 +165,7 @@ class AppGui {
}); });
} }
}); });
this.rootWidget_.connect(folderList, (state) => { this.rootWidget_.connect(folderList, state => {
return { return {
selectedFolderId: state.selectedFolderId, selectedFolderId: state.selectedFolderId,
selectedTagId: state.selectedTagId, selectedTagId: state.selectedTagId,
@@ -196,7 +192,7 @@ class AppGui {
id: note ? note.id : null, id: note ? note.id : null,
}); });
}); });
this.rootWidget_.connect(noteList, (state) => { this.rootWidget_.connect(noteList, state => {
return { return {
selectedNoteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null, selectedNoteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null,
items: state.notes, items: state.notes,
@@ -210,7 +206,7 @@ class AppGui {
borderBottomWidth: 1, borderBottomWidth: 1,
borderLeftWidth: 1, borderLeftWidth: 1,
}; };
this.rootWidget_.connect(noteText, (state) => { this.rootWidget_.connect(noteText, state => {
return { return {
noteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null, noteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null,
notes: state.notes, notes: state.notes,
@@ -225,7 +221,7 @@ class AppGui {
borderLeftWidth: 1, borderLeftWidth: 1,
borderRightWidth: 1, borderRightWidth: 1,
}; };
this.rootWidget_.connect(noteMetadata, (state) => { this.rootWidget_.connect(noteMetadata, state => {
return { noteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null }; return { noteId: state.selectedNoteIds.length ? state.selectedNoteIds[0] : null };
}); });
noteMetadata.hide(); noteMetadata.hide();
@@ -292,7 +288,7 @@ class AppGui {
if (!cmd) return; if (!cmd) return;
const isConfigPassword = cmd.indexOf('config ') >= 0 && cmd.indexOf('password') >= 0; const isConfigPassword = cmd.indexOf('config ') >= 0 && cmd.indexOf('password') >= 0;
if (isConfigPassword) return; if (isConfigPassword) return;
this.stdout(chalk.cyan.bold('> ' + cmd)); this.stdout(chalk.cyan.bold('> ' + cmd));
} }
setupKeymap(keymap) { setupKeymap(keymap) {
@@ -408,7 +404,7 @@ class AppGui {
activeListItem() { activeListItem() {
const widget = this.widget('mainWindow').focusedWidget; const widget = this.widget('mainWindow').focusedWidget;
if (!widget) return null; if (!widget) return null;
if (widget.name == 'noteList' || widget.name == 'folderList') { if (widget.name == 'noteList' || widget.name == 'folderList') {
return widget.currentItem; return widget.currentItem;
} }
@@ -430,18 +426,14 @@ class AppGui {
} }
async processFunctionCommand(cmd) { async processFunctionCommand(cmd) {
if (cmd === 'activate') { if (cmd === 'activate') {
const w = this.widget('mainWindow').focusedWidget; const w = this.widget('mainWindow').focusedWidget;
if (w.name === 'folderList') { if (w.name === 'folderList') {
this.widget('noteList').focus(); this.widget('noteList').focus();
} else if (w.name === 'noteList' || w.name === 'noteText') { } else if (w.name === 'noteList' || w.name === 'noteText') {
this.processPromptCommand('edit $n'); this.processPromptCommand('edit $n');
} }
} else if (cmd === 'delete') { } else if (cmd === 'delete') {
if (this.widget('folderList').hasFocus) { if (this.widget('folderList').hasFocus) {
const item = this.widget('folderList').selectedJoplinItem; const item = this.widget('folderList').selectedJoplinItem;
@@ -462,9 +454,7 @@ class AppGui {
} else { } else {
this.stdout(_('Please select the note or notebook to be deleted first.')); this.stdout(_('Please select the note or notebook to be deleted first.'));
} }
} else if (cmd === 'toggle_console') { } else if (cmd === 'toggle_console') {
if (!this.consoleIsShown()) { if (!this.consoleIsShown()) {
this.showConsole(); this.showConsole();
this.minimizeConsole(); this.minimizeConsole();
@@ -475,22 +465,15 @@ class AppGui {
this.maximizeConsole(); this.maximizeConsole();
} }
} }
} else if (cmd === 'toggle_metadata') { } else if (cmd === 'toggle_metadata') {
this.toggleNoteMetadata(); this.toggleNoteMetadata();
} else if (cmd === 'enter_command_line_mode') { } else if (cmd === 'enter_command_line_mode') {
const cmd = await this.widget('statusBar').prompt(); const cmd = await this.widget('statusBar').prompt();
if (!cmd) return; if (!cmd) return;
this.addCommandToConsole(cmd); this.addCommandToConsole(cmd);
await this.processPromptCommand(cmd); await this.processPromptCommand(cmd);
} else { } else {
throw new Error('Unknown command: ' + cmd); throw new Error('Unknown command: ' + cmd);
} }
} }
@@ -501,7 +484,7 @@ class AppGui {
// this.logger().debug('Got command: ' + cmd); // this.logger().debug('Got command: ' + cmd);
try { try {
let note = this.widget('noteList').currentItem; let note = this.widget('noteList').currentItem;
let folder = this.widget('folderList').currentItem; let folder = this.widget('folderList').currentItem;
let args = splitCommandString(cmd); let args = splitCommandString(cmd);
@@ -511,7 +494,7 @@ class AppGui {
args[i] = note ? note.id : ''; args[i] = note ? note.id : '';
} else if (args[i] == '$b') { } else if (args[i] == '$b') {
args[i] = folder ? folder.id : ''; args[i] = folder ? folder.id : '';
} else if (args[i] == '$c') { } else if (args[i] == '$c') {
const item = this.activeListItem(); const item = this.activeListItem();
args[i] = item ? item.id : ''; args[i] = item ? item.id : '';
} }
@@ -523,7 +506,7 @@ class AppGui {
} }
this.widget('console').scrollBottom(); this.widget('console').scrollBottom();
// Invalidate so that the screen is redrawn in case inputting a command has moved // Invalidate so that the screen is redrawn in case inputting a command has moved
// the GUI up (in particular due to autocompletion), it's moved back to the right position. // the GUI up (in particular due to autocompletion), it's moved back to the right position.
this.widget('root').invalidate(); this.widget('root').invalidate();
@@ -603,7 +586,7 @@ class AppGui {
async setupResourceServer() { async setupResourceServer() {
const linkStyle = chalk.blue.underline; const linkStyle = chalk.blue.underline;
const noteTextWidget = this.widget('noteText'); const noteTextWidget = this.widget('noteText');
const resourceIdRegex = /^:\/[a-f0-9]+$/i const resourceIdRegex = /^:\/[a-f0-9]+$/i;
const noteLinks = {}; const noteLinks = {};
const hasProtocol = function(s, protocols) { const hasProtocol = function(s, protocols) {
@@ -613,7 +596,7 @@ class AppGui {
if (s.indexOf(protocols[i] + '://') === 0) return true; if (s.indexOf(protocols[i] + '://') === 0) return true;
} }
return false; return false;
} };
// By default, before the server is started, only the regular // By default, before the server is started, only the regular
// URLs appear in blue. // URLs appear in blue.
@@ -637,7 +620,7 @@ class AppGui {
const link = noteLinks[path]; const link = noteLinks[path];
if (link.type === 'url') { if (link.type === 'url') {
response.writeHead(302, { 'Location': link.url }); response.writeHead(302, { Location: link.url });
return true; return true;
} }
@@ -650,11 +633,13 @@ class AppGui {
if (item.mime) response.setHeader('Content-Type', item.mime); if (item.mime) response.setHeader('Content-Type', item.mime);
response.write(await Resource.content(item)); response.write(await Resource.content(item));
} else if (item.type_ === BaseModel.TYPE_NOTE) { } else if (item.type_ === BaseModel.TYPE_NOTE) {
const html = [` const html = [
`
<!DOCTYPE html> <!DOCTYPE html>
<html class="client-nojs" lang="en" dir="ltr"> <html class="client-nojs" lang="en" dir="ltr">
<head><meta charset="UTF-8"/></head><body> <head><meta charset="UTF-8"/></head><body>
`]; `,
];
html.push('<pre>' + htmlentities(item.title) + '\n\n' + htmlentities(item.body) + '</pre>'); html.push('<pre>' + htmlentities(item.title) + '\n\n' + htmlentities(item.body) + '</pre>');
html.push('</body></html>'); html.push('</body></html>');
response.write(html.join('')); response.write(html.join(''));
@@ -679,7 +664,7 @@ class AppGui {
noteLinks[index] = { noteLinks[index] = {
type: 'item', type: 'item',
id: url.substr(2), id: url.substr(2),
}; };
} else if (hasProtocol(url, ['http', 'https', 'file', 'ftp'])) { } else if (hasProtocol(url, ['http', 'https', 'file', 'ftp'])) {
noteLinks[index] = { noteLinks[index] = {
type: 'url', type: 'url',
@@ -711,7 +696,6 @@ class AppGui {
term.grabInput(); term.grabInput();
term.on('key', async (name, matches, data) => { term.on('key', async (name, matches, data) => {
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
// Handle special shortcuts // Handle special shortcuts
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
@@ -729,13 +713,13 @@ class AppGui {
return; return;
} }
if (name === 'CTRL_C' ) { if (name === 'CTRL_C') {
const cmd = this.app().currentCommand(); const cmd = this.app().currentCommand();
if (!cmd || !cmd.cancellable() || this.commandCancelCalled_) { if (!cmd || !cmd.cancellable() || this.commandCancelCalled_) {
this.stdout(_('Press Ctrl+D or type "exit" to exit the application')); this.stdout(_('Press Ctrl+D or type "exit" to exit the application'));
} else { } else {
this.commandCancelCalled_ = true; this.commandCancelCalled_ = true;
await cmd.cancel() await cmd.cancel();
this.commandCancelCalled_ = false; this.commandCancelCalled_ = false;
} }
return; return;
@@ -744,8 +728,8 @@ class AppGui {
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
// Build up current shortcut // Build up current shortcut
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
const now = (new Date()).getTime(); const now = new Date().getTime();
if (now - this.lastShortcutKeyTime_ > 800 || this.isSpecialKey(name)) { if (now - this.lastShortcutKeyTime_ > 800 || this.isSpecialKey(name)) {
this.currentShortcutKeys_ = [name]; this.currentShortcutKeys_ = [name];
@@ -813,7 +797,6 @@ class AppGui {
process.exit(1); process.exit(1);
}); });
} }
} }
AppGui.INPUT_MODE_NORMAL = 1; AppGui.INPUT_MODE_NORMAL = 1;

View File

@@ -1,10 +1,5 @@
const { BaseApplication } = require('lib/BaseApplication'); const { BaseApplication } = require('lib/BaseApplication');
const { createStore, applyMiddleware } = require('redux');
const { reducer, defaultState } = require('lib/reducer.js');
const { JoplinDatabase } = require('lib/joplin-database.js');
const { Database } = require('lib/database.js');
const { FoldersScreenUtils } = require('lib/folders-screen-utils.js'); const { FoldersScreenUtils } = require('lib/folders-screen-utils.js');
const { DatabaseDriverNode } = require('lib/database-driver-node.js');
const ResourceService = require('lib/services/ResourceService'); const ResourceService = require('lib/services/ResourceService');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js'); const Folder = require('lib/models/Folder.js');
@@ -12,21 +7,15 @@ const BaseItem = require('lib/models/BaseItem.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const Tag = require('lib/models/Tag.js'); const Tag = require('lib/models/Tag.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { Logger } = require('lib/logger.js');
const { sprintf } = require('sprintf-js');
const { reg } = require('lib/registry.js'); const { reg } = require('lib/registry.js');
const { fileExtension } = require('lib/path-utils.js'); const { fileExtension } = require('lib/path-utils.js');
const { shim } = require('lib/shim.js'); const { _ } = require('lib/locale.js');
const { _, setLocale, defaultLocale, closestSupportedLocale } = require('lib/locale.js');
const os = require('os');
const fs = require('fs-extra'); const fs = require('fs-extra');
const { cliUtils } = require('./cli-utils.js'); const { cliUtils } = require('./cli-utils.js');
const Cache = require('lib/Cache'); const Cache = require('lib/Cache');
const WelcomeUtils = require('lib/WelcomeUtils');
const RevisionService = require('lib/services/RevisionService'); const RevisionService = require('lib/services/RevisionService');
class Application extends BaseApplication { class Application extends BaseApplication {
constructor() { constructor() {
super(); super();
@@ -75,7 +64,7 @@ class Application extends BaseApplication {
// const response = await cliUtils.promptMcq(msg, answers); // const response = await cliUtils.promptMcq(msg, answers);
// if (!response) return null; // if (!response) return null;
return output[response - 1]; // return output[response - 1];
} else { } else {
return output.length ? output[0] : null; return output.length ? output[0] : null;
} }
@@ -97,10 +86,12 @@ class Application extends BaseApplication {
const parent = options.parent ? options.parent : app().currentFolder(); const parent = options.parent ? options.parent : app().currentFolder();
const ItemClass = BaseItem.itemClass(type); const ItemClass = BaseItem.itemClass(type);
if (type == BaseModel.TYPE_NOTE && pattern.indexOf('*') >= 0) { // Handle it as pattern if (type == BaseModel.TYPE_NOTE && pattern.indexOf('*') >= 0) {
// Handle it as pattern
if (!parent) throw new Error(_('No notebook selected.')); if (!parent) throw new Error(_('No notebook selected.'));
return await Note.previews(parent.id, { titlePattern: pattern }); return await Note.previews(parent.id, { titlePattern: pattern });
} else { // Single item } else {
// Single item
let item = null; let item = null;
if (type == BaseModel.TYPE_NOTE) { if (type == BaseModel.TYPE_NOTE) {
if (!parent) throw new Error(_('No notebook has been specified.')); if (!parent) throw new Error(_('No notebook has been specified.'));
@@ -126,15 +117,15 @@ class Application extends BaseApplication {
} }
setupCommand(cmd) { setupCommand(cmd) {
cmd.setStdout((text) => { cmd.setStdout(text => {
return this.stdout(text); return this.stdout(text);
}); });
cmd.setDispatcher((action) => { cmd.setDispatcher(action => {
if (this.store()) { if (this.store()) {
return this.store().dispatch(action); return this.store().dispatch(action);
} else { } else {
return (action) => {}; return action => {};
} }
}); });
@@ -185,9 +176,9 @@ class Application extends BaseApplication {
commands(uiType = null) { commands(uiType = null) {
if (!this.allCommandsLoaded_) { if (!this.allCommandsLoaded_) {
fs.readdirSync(__dirname).forEach((path) => { fs.readdirSync(__dirname).forEach(path => {
if (path.indexOf('command-') !== 0) return; if (path.indexOf('command-') !== 0) return;
const ext = fileExtension(path) const ext = fileExtension(path);
if (ext != 'js') return; if (ext != 'js') return;
let CommandClass = require('./' + path); let CommandClass = require('./' + path);
@@ -276,19 +267,27 @@ class Application extends BaseApplication {
dummyGui() { dummyGui() {
return { return {
isDummy: () => { return true; }, isDummy: () => {
prompt: (initialText = '', promptString = '', options = null) => { return cliUtils.prompt(initialText, promptString, options); }, return true;
},
prompt: (initialText = '', promptString = '', options = null) => {
return cliUtils.prompt(initialText, promptString, options);
},
showConsole: () => {}, showConsole: () => {},
maximizeConsole: () => {}, maximizeConsole: () => {},
stdout: (text) => { console.info(text); }, stdout: text => {
fullScreen: (b=true) => {}, console.info(text);
},
fullScreen: (b = true) => {},
exit: () => {}, exit: () => {},
showModalOverlay: (text) => {}, showModalOverlay: text => {},
hideModalOverlay: () => {}, hideModalOverlay: () => {},
stdoutMaxWidth: () => { return 100; }, stdoutMaxWidth: () => {
return 100;
},
forceRender: () => {}, forceRender: () => {},
termSaveState: () => {}, termSaveState: () => {},
termRestoreState: (state) => {}, termRestoreState: state => {},
}; };
} }
@@ -300,7 +299,7 @@ class Application extends BaseApplication {
let outException = null; let outException = null;
try { try {
if (this.gui().isDummy() && !this.activeCommand_.supportsUi('cli')) throw new Error(_('The command "%s" is only available in GUI mode', this.activeCommand_.name())); if (this.gui().isDummy() && !this.activeCommand_.supportsUi('cli')) throw new Error(_('The command "%s" is only available in GUI mode', this.activeCommand_.name()));
const cmdArgs = cliUtils.makeCommandArgs(this.activeCommand_, argv); const cmdArgs = cliUtils.makeCommandArgs(this.activeCommand_, argv);
await this.activeCommand_.action(cmdArgs); await this.activeCommand_.action(cmdArgs);
} catch (error) { } catch (error) {
@@ -316,24 +315,24 @@ class Application extends BaseApplication {
async loadKeymaps() { async loadKeymaps() {
const defaultKeyMap = [ const defaultKeyMap = [
{ "keys": [":"], "type": "function", "command": "enter_command_line_mode" }, { keys: [':'], type: 'function', command: 'enter_command_line_mode' },
{ "keys": ["TAB"], "type": "function", "command": "focus_next" }, { keys: ['TAB'], type: 'function', command: 'focus_next' },
{ "keys": ["SHIFT_TAB"], "type": "function", "command": "focus_previous" }, { keys: ['SHIFT_TAB'], type: 'function', command: 'focus_previous' },
{ "keys": ["UP"], "type": "function", "command": "move_up" }, { keys: ['UP'], type: 'function', command: 'move_up' },
{ "keys": ["DOWN"], "type": "function", "command": "move_down" }, { keys: ['DOWN'], type: 'function', command: 'move_down' },
{ "keys": ["PAGE_UP"], "type": "function", "command": "page_up" }, { keys: ['PAGE_UP'], type: 'function', command: 'page_up' },
{ "keys": ["PAGE_DOWN"], "type": "function", "command": "page_down" }, { keys: ['PAGE_DOWN'], type: 'function', command: 'page_down' },
{ "keys": ["ENTER"], "type": "function", "command": "activate" }, { keys: ['ENTER'], type: 'function', command: 'activate' },
{ "keys": ["DELETE", "BACKSPACE"], "type": "function", "command": "delete" }, { keys: ['DELETE', 'BACKSPACE'], type: 'function', command: 'delete' },
{ "keys": [" "], "command": "todo toggle $n" }, { keys: [' '], command: 'todo toggle $n' },
{ "keys": ["tc"], "type": "function", "command": "toggle_console" }, { keys: ['tc'], type: 'function', command: 'toggle_console' },
{ "keys": ["tm"], "type": "function", "command": "toggle_metadata" }, { keys: ['tm'], type: 'function', command: 'toggle_metadata' },
{ "keys": ["/"], "type": "prompt", "command": "search \"\"", "cursorPosition": -2 }, { keys: ['/'], type: 'prompt', command: 'search ""', cursorPosition: -2 },
{ "keys": ["mn"], "type": "prompt", "command": "mknote \"\"", "cursorPosition": -2 }, { keys: ['mn'], type: 'prompt', command: 'mknote ""', cursorPosition: -2 },
{ "keys": ["mt"], "type": "prompt", "command": "mktodo \"\"", "cursorPosition": -2 }, { keys: ['mt'], type: 'prompt', command: 'mktodo ""', cursorPosition: -2 },
{ "keys": ["mb"], "type": "prompt", "command": "mkbook \"\"", "cursorPosition": -2 }, { keys: ['mb'], type: 'prompt', command: 'mkbook ""', cursorPosition: -2 },
{ "keys": ["yn"], "type": "prompt", "command": "cp $n \"\"", "cursorPosition": -2 }, { keys: ['yn'], type: 'prompt', command: 'cp $n ""', cursorPosition: -2 },
{ "keys": ["dn"], "type": "prompt", "command": "mv $n \"\"", "cursorPosition": -2 } { keys: ['dn'], type: 'prompt', command: 'mv $n ""', cursorPosition: -2 },
]; ];
// Filter the keymap item by command so that items in keymap.json can override // Filter the keymap item by command so that items in keymap.json can override
@@ -341,7 +340,7 @@ class Application extends BaseApplication {
const itemsByCommand = {}; const itemsByCommand = {};
for (let i = 0; i < defaultKeyMap.length; i++) { for (let i = 0; i < defaultKeyMap.length; i++) {
itemsByCommand[defaultKeyMap[i].command] = defaultKeyMap[i] itemsByCommand[defaultKeyMap[i].command] = defaultKeyMap[i];
} }
const filePath = Setting.value('profileDir') + '/keymap.json'; const filePath = Setting.value('profileDir') + '/keymap.json';
@@ -374,7 +373,7 @@ class Application extends BaseApplication {
async start(argv) { async start(argv) {
argv = await super.start(argv); argv = await super.start(argv);
cliUtils.setStdout((object) => { cliUtils.setStdout(object => {
return this.stdout(object); return this.stdout(object);
}); });
@@ -385,6 +384,8 @@ class Application extends BaseApplication {
this.currentFolder_ = await Folder.load(Setting.value('activeFolderId')); this.currentFolder_ = await Folder.load(Setting.value('activeFolderId'));
await this.applySettingsSideEffects();
try { try {
await this.execCommand(argv); await this.execCommand(argv);
} catch (error) { } catch (error) {
@@ -401,7 +402,8 @@ class Application extends BaseApplication {
// Need to call exit() explicitely, otherwise Node wait for any timeout to complete // Need to call exit() explicitely, otherwise Node wait for any timeout to complete
// https://stackoverflow.com/questions/18050095 // https://stackoverflow.com/questions/18050095
process.exit(0); process.exit(0);
} else { // Otherwise open the GUI } else {
// Otherwise open the GUI
this.initRedux(); this.initRedux();
const keymap = await this.loadKeymaps(); const keymap = await this.loadKeymaps();
@@ -421,7 +423,7 @@ class Application extends BaseApplication {
const tags = await Tag.allWithNotes(); const tags = await Tag.allWithNotes();
ResourceService.runInBackground(); ResourceService.runInBackground();
RevisionService.instance().runInBackground(); RevisionService.instance().runInBackground();
this.dispatch({ this.dispatch({
@@ -435,7 +437,6 @@ class Application extends BaseApplication {
}); });
} }
} }
} }
let application_ = null; let application_ = null;
@@ -446,4 +447,4 @@ function app() {
return application_; return application_;
} }
module.exports = { app }; module.exports = { app };

View File

@@ -14,11 +14,11 @@ async function handleAutocompletionPromise(line) {
//should look for commmands it could be //should look for commmands it could be
if (words.length == 1) { if (words.length == 1) {
if (names.indexOf(words[0]) === -1) { if (names.indexOf(words[0]) === -1) {
let x = names.filter((n) => n.indexOf(words[0]) === 0); let x = names.filter(n => n.indexOf(words[0]) === 0);
if (x.length === 1) { if (x.length === 1) {
return x[0] + ' '; return x[0] + ' ';
} }
return x.length > 0 ? x.map((a) => a + ' ') : line; return x.length > 0 ? x.map(a => a + ' ') : line;
} else { } else {
return line; return line;
} }
@@ -34,9 +34,9 @@ async function handleAutocompletionPromise(line) {
let next = words.length > 1 ? words[words.length - 1] : ''; let next = words.length > 1 ? words[words.length - 1] : '';
let l = []; let l = [];
if (next[0] === '-') { if (next[0] === '-') {
for (let i = 0; i<metadata.options.length; i++) { for (let i = 0; i < metadata.options.length; i++) {
const options = metadata.options[i][0].split(' '); const options = metadata.options[i][0].split(' ');
//if there are multiple options then they will be separated by comma and //if there are multiple options then they will be separated by comma and
//space. The comma should be removed //space. The comma should be removed
if (options[0][options[0].length - 1] === ',') { if (options[0][options[0].length - 1] === ',') {
options[0] = options[0].slice(0, -1); options[0] = options[0].slice(0, -1);
@@ -55,20 +55,19 @@ async function handleAutocompletionPromise(line) {
if (l.length === 0) { if (l.length === 0) {
return line; return line;
} }
let ret = l.map(a=>toCommandLine(a)); let ret = l.map(a => toCommandLine(a));
ret.prefix = toCommandLine(words.slice(0, -1)) + ' '; ret.prefix = toCommandLine(words.slice(0, -1)) + ' ';
return ret; return ret;
} }
//Complete an argument //Complete an argument
//Determine the number of positional arguments by counting the number of //Determine the number of positional arguments by counting the number of
//words that don't start with a - less one for the command name //words that don't start with a - less one for the command name
const positionalArgs = words.filter((a)=>a.indexOf('-') !== 0).length - 1; const positionalArgs = words.filter(a => a.indexOf('-') !== 0).length - 1;
let cmdUsage = yargParser(metadata.usage)['_']; let cmdUsage = yargParser(metadata.usage)['_'];
cmdUsage.splice(0, 1); cmdUsage.splice(0, 1);
if (cmdUsage.length >= positionalArgs) { if (cmdUsage.length >= positionalArgs) {
let argName = cmdUsage[positionalArgs - 1]; let argName = cmdUsage[positionalArgs - 1];
argName = cliUtils.parseCommandArg(argName).name; argName = cliUtils.parseCommandArg(argName).name;
@@ -76,23 +75,23 @@ async function handleAutocompletionPromise(line) {
if (argName == 'note' || argName == 'note-pattern') { if (argName == 'note' || argName == 'note-pattern') {
const notes = currentFolder ? await Note.previews(currentFolder.id, { titlePattern: next + '*' }) : []; const notes = currentFolder ? await Note.previews(currentFolder.id, { titlePattern: next + '*' }) : [];
l.push(...notes.map((n) => n.title)); l.push(...notes.map(n => n.title));
} }
if (argName == 'notebook') { if (argName == 'notebook') {
const folders = await Folder.search({ titlePattern: next + '*' }); const folders = await Folder.search({ titlePattern: next + '*' });
l.push(...folders.map((n) => n.title)); l.push(...folders.map(n => n.title));
} }
if (argName == 'item') { if (argName == 'item') {
const notes = currentFolder ? await Note.previews(currentFolder.id, { titlePattern: next + '*' }) : []; const notes = currentFolder ? await Note.previews(currentFolder.id, { titlePattern: next + '*' }) : [];
const folders = await Folder.search({ titlePattern: next + '*' }); const folders = await Folder.search({ titlePattern: next + '*' });
l.push(...notes.map((n) => n.title), folders.map((n) => n.title)); l.push(...notes.map(n => n.title), folders.map(n => n.title));
} }
if (argName == 'tag') { if (argName == 'tag') {
let tags = await Tag.search({ titlePattern: next + '*' }); let tags = await Tag.search({ titlePattern: next + '*' });
l.push(...tags.map((n) => n.title)); l.push(...tags.map(n => n.title));
} }
if (argName == 'file') { if (argName == 'file') {
@@ -113,12 +112,11 @@ async function handleAutocompletionPromise(line) {
if (l.length === 1) { if (l.length === 1) {
return toCommandLine([...words.slice(0, -1), l[0]]); return toCommandLine([...words.slice(0, -1), l[0]]);
} else if (l.length > 1) { } else if (l.length > 1) {
let ret = l.map(a=>toCommandLine(a)); let ret = l.map(a => toCommandLine(a));
ret.prefix = toCommandLine(words.slice(0, -1)) + ' '; ret.prefix = toCommandLine(words.slice(0, -1)) + ' ';
return ret; return ret;
} }
return line; return line;
} }
function handleAutocompletion(str, callback) { function handleAutocompletion(str, callback) {
handleAutocompletionPromise(str).then(function(res) { handleAutocompletionPromise(str).then(function(res) {
@@ -127,19 +125,21 @@ function handleAutocompletion(str, callback) {
} }
function toCommandLine(args) { function toCommandLine(args) {
if (Array.isArray(args)) { if (Array.isArray(args)) {
return args.map(function(a) { return args
if(a.indexOf('"') !== -1 || a.indexOf(' ') !== -1) { .map(function(a) {
return "'" + a + "'"; if (a.indexOf('"') !== -1 || a.indexOf(' ') !== -1) {
} else if (a.indexOf("'") !== -1) { return '\'' + a + '\'';
return '"' + a + '"'; } else if (a.indexOf('\'') !== -1) {
} else { return '"' + a + '"';
return a; } else {
} return a;
}).join(' '); }
})
.join(' ');
} else { } else {
if(args.indexOf('"') !== -1 || args.indexOf(' ') !== -1) { if (args.indexOf('"') !== -1 || args.indexOf(' ') !== -1) {
return "'" + args + "' "; return '\'' + args + '\' ';
} else if (args.indexOf("'") !== -1) { } else if (args.indexOf('\'') !== -1) {
return '"' + args + '" '; return '"' + args + '" ';
} else { } else {
return args + ' '; return args + ' ';
@@ -151,9 +151,9 @@ function getArguments(line) {
let inDoubleQuotes = false; let inDoubleQuotes = false;
let currentWord = ''; let currentWord = '';
let parsed = []; let parsed = [];
for(let i = 0; i<line.length; i++) { for (let i = 0; i < line.length; i++) {
if(line[i] === '"') { if (line[i] === '"') {
if(inDoubleQuotes) { if (inDoubleQuotes) {
inDoubleQuotes = false; inDoubleQuotes = false;
//maybe push word to parsed? //maybe push word to parsed?
//currentWord += '"'; //currentWord += '"';
@@ -161,8 +161,8 @@ function getArguments(line) {
inDoubleQuotes = true; inDoubleQuotes = true;
//currentWord += '"'; //currentWord += '"';
} }
} else if(line[i] === "'") { } else if (line[i] === '\'') {
if(inSingleQuotes) { if (inSingleQuotes) {
inSingleQuotes = false; inSingleQuotes = false;
//maybe push word to parsed? //maybe push word to parsed?
//currentWord += "'"; //currentWord += "'";
@@ -170,8 +170,7 @@ function getArguments(line) {
inSingleQuotes = true; inSingleQuotes = true;
//currentWord += "'"; //currentWord += "'";
} }
} else if (/\s/.test(line[i]) && } else if (/\s/.test(line[i]) && !(inDoubleQuotes || inSingleQuotes)) {
!(inDoubleQuotes || inSingleQuotes)) {
if (currentWord !== '') { if (currentWord !== '') {
parsed.push(currentWord); parsed.push(currentWord);
currentWord = ''; currentWord = '';

View File

@@ -2,7 +2,6 @@ const { _ } = require('lib/locale.js');
const { reg } = require('lib/registry.js'); const { reg } = require('lib/registry.js');
class BaseCommand { class BaseCommand {
constructor() { constructor() {
this.stdout_ = null; this.stdout_ = null;
this.prompt_ = null; this.prompt_ = null;
@@ -93,7 +92,6 @@ class BaseCommand {
logger() { logger() {
return reg.logger(); return reg.logger();
} }
} }
module.exports = { BaseCommand }; module.exports = { BaseCommand };

View File

@@ -1,7 +1,7 @@
const fs = require('fs-extra'); const fs = require('fs-extra');
const { fileExtension, basename, dirname } = require('lib/path-utils.js'); const { fileExtension, dirname } = require('lib/path-utils.js');
const wrap_ = require('word-wrap'); const wrap_ = require('word-wrap');
const { _, setLocale, languageCode } = require('lib/locale.js'); const { languageCode } = require('lib/locale.js');
const rootDir = dirname(dirname(__dirname)); const rootDir = dirname(dirname(__dirname));
const MAX_WIDTH = 78; const MAX_WIDTH = 78;
@@ -22,14 +22,14 @@ function renderOptions(options) {
let option = options[i]; let option = options[i];
const flag = option[0]; const flag = option[0];
const indent = INDENT + INDENT + ' '.repeat(optionColWidth + 2); const indent = INDENT + INDENT + ' '.repeat(optionColWidth + 2);
let r = wrap(option[1], indent); let r = wrap(option[1], indent);
r = r.substr(flag.length + (INDENT + INDENT).length); r = r.substr(flag.length + (INDENT + INDENT).length);
r = INDENT + INDENT + flag + r; r = INDENT + INDENT + flag + r;
output.push(r); output.push(r);
} }
return output.join("\n"); return output.join('\n');
} }
function renderCommand(cmd) { function renderCommand(cmd) {
@@ -44,14 +44,14 @@ function renderCommand(cmd) {
output.push(''); output.push('');
output.push(optionString); output.push(optionString);
} }
return output.join("\n"); return output.join('\n');
} }
function getCommands() { function getCommands() {
let output = []; let output = [];
fs.readdirSync(__dirname).forEach((path) => { fs.readdirSync(__dirname).forEach(path => {
if (path.indexOf('command-') !== 0) return; if (path.indexOf('command-') !== 0) return;
const ext = fileExtension(path) const ext = fileExtension(path);
if (ext != 'js') return; if (ext != 'js') return;
let CommandClass = require('./' + path); let CommandClass = require('./' + path);
@@ -87,14 +87,14 @@ function getHeader() {
let description = []; let description = [];
description.push('Joplin is a note taking and to-do application, which can handle a large number of notes organised into notebooks.'); description.push('Joplin is a note taking and to-do application, which can handle a large number of notes organised into notebooks.');
description.push('The notes are searchable, can be copied, tagged and modified with your own text editor.'); description.push('The notes are searchable, can be copied, tagged and modified with your own text editor.');
description.push("\n\n"); description.push('\n\n');
description.push('The notes can be synchronised with various target including the file system (for example with a network directory) or with Microsoft OneDrive.'); description.push('The notes can be synchronised with various target including the file system (for example with a network directory) or with Microsoft OneDrive.');
description.push("\n\n"); description.push('\n\n');
description.push('Notes exported from Evenotes via .enex files can be imported into Joplin, including the formatted content, resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.).'); description.push('Notes exported from Evenotes via .enex files can be imported into Joplin, including the formatted content, resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.).');
output.push(wrap(description.join(''), INDENT)); output.push(wrap(description.join(''), INDENT));
return output.join("\n"); return output.join('\n');
} }
function getFooter() { function getFooter() {
@@ -113,7 +113,7 @@ function getFooter() {
const licenseText = fs.readFileSync(filePath, 'utf8'); const licenseText = fs.readFileSync(filePath, 'utf8');
output.push(wrap(licenseText, INDENT)); output.push(wrap(licenseText, INDENT));
return output.join("\n"); return output.join('\n');
} }
async function main() { async function main() {
@@ -128,12 +128,12 @@ async function main() {
} }
const headerText = getHeader(); const headerText = getHeader();
const commandsText = commandBlocks.join("\n\n"); const commandsText = commandBlocks.join('\n\n');
const footerText = getFooter(); const footerText = getFooter();
console.info(headerText + "\n\n" + 'USAGE' + "\n\n" + commandsText + "\n\n" + footerText); console.info(headerText + '\n\n' + 'USAGE' + '\n\n' + commandsText + '\n\n' + footerText);
} }
main().catch((error) => { main().catch(error => {
console.error(error); console.error(error);
}); });

View File

@@ -1,4 +1,4 @@
"use strict" 'use strict';
const fs = require('fs-extra'); const fs = require('fs-extra');
const { Logger } = require('lib/logger.js'); const { Logger } = require('lib/logger.js');
@@ -10,7 +10,7 @@ const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { sprintf } = require('sprintf-js'); const { sprintf } = require('sprintf-js');
const exec = require('child_process').exec const exec = require('child_process').exec;
process.on('unhandledRejection', (reason, p) => { process.on('unhandledRejection', (reason, p) => {
console.error('Unhandled promise rejection', p, 'reason:', reason); console.error('Unhandled promise rejection', p, 'reason:', reason);
@@ -32,8 +32,8 @@ db.setLogger(dbLogger);
function createClient(id) { function createClient(id) {
return { return {
'id': id, id: id,
'profileDir': baseDir + '/client' + id, profileDir: baseDir + '/client' + id,
}; };
} }
@@ -72,14 +72,7 @@ function assertEquals(expected, real) {
} }
async function clearDatabase() { async function clearDatabase() {
await db.transactionExecBatch([ await db.transactionExecBatch(['DELETE FROM folders', 'DELETE FROM notes', 'DELETE FROM tags', 'DELETE FROM note_tags', 'DELETE FROM resources', 'DELETE FROM deleted_items']);
'DELETE FROM folders',
'DELETE FROM notes',
'DELETE FROM tags',
'DELETE FROM note_tags',
'DELETE FROM resources',
'DELETE FROM deleted_items',
]);
} }
const testUnits = {}; const testUnits = {};
@@ -101,7 +94,7 @@ testUnits.testFolders = async () => {
folders = await Folder.all(); folders = await Folder.all();
assertEquals(0, folders.length); assertEquals(0, folders.length);
} };
testUnits.testNotes = async () => { testUnits.testNotes = async () => {
await execCommand(client, 'mkbook nb1'); await execCommand(client, 'mkbook nb1');
@@ -121,16 +114,16 @@ testUnits.testNotes = async () => {
notes = await Note.all(); notes = await Note.all();
assertEquals(2, notes.length); assertEquals(2, notes.length);
await execCommand(client, "rm -f 'blabla*'"); await execCommand(client, 'rm -f \'blabla*\'');
notes = await Note.all(); notes = await Note.all();
assertEquals(2, notes.length); assertEquals(2, notes.length);
await execCommand(client, "rm -f 'n*'"); await execCommand(client, 'rm -f \'n*\'');
notes = await Note.all(); notes = await Note.all();
assertEquals(0, notes.length); assertEquals(0, notes.length);
} };
testUnits.testCat = async () => { testUnits.testCat = async () => {
await execCommand(client, 'mkbook nb1'); await execCommand(client, 'mkbook nb1');
@@ -145,7 +138,7 @@ testUnits.testCat = async () => {
r = await execCommand(client, 'cat -v mynote'); r = await execCommand(client, 'cat -v mynote');
assertTrue(r.indexOf(note.id) >= 0); assertTrue(r.indexOf(note.id) >= 0);
} };
testUnits.testConfig = async () => { testUnits.testConfig = async () => {
await execCommand(client, 'config editor vim'); await execCommand(client, 'config editor vim');
@@ -159,7 +152,7 @@ testUnits.testConfig = async () => {
let r = await execCommand(client, 'config'); let r = await execCommand(client, 'config');
assertTrue(r.indexOf('editor') >= 0); assertTrue(r.indexOf('editor') >= 0);
assertTrue(r.indexOf('subl') >= 0); assertTrue(r.indexOf('subl') >= 0);
} };
testUnits.testCp = async () => { testUnits.testCp = async () => {
await execCommand(client, 'mkbook nb2'); await execCommand(client, 'mkbook nb2');
@@ -180,7 +173,7 @@ testUnits.testCp = async () => {
notes = await Note.previews(f2.id); notes = await Note.previews(f2.id);
assertEquals(1, notes.length); assertEquals(1, notes.length);
assertEquals(notesF1[0].title, notes[0].title); assertEquals(notesF1[0].title, notes[0].title);
} };
testUnits.testLs = async () => { testUnits.testLs = async () => {
await execCommand(client, 'mkbook nb1'); await execCommand(client, 'mkbook nb1');
@@ -190,7 +183,7 @@ testUnits.testLs = async () => {
assertTrue(r.indexOf('note1') >= 0); assertTrue(r.indexOf('note1') >= 0);
assertTrue(r.indexOf('note2') >= 0); assertTrue(r.indexOf('note2') >= 0);
} };
testUnits.testMv = async () => { testUnits.testMv = async () => {
await execCommand(client, 'mkbook nb2'); await execCommand(client, 'mkbook nb2');
@@ -210,14 +203,14 @@ testUnits.testMv = async () => {
await execCommand(client, 'mknote note2'); await execCommand(client, 'mknote note2');
await execCommand(client, 'mknote note3'); await execCommand(client, 'mknote note3');
await execCommand(client, 'mknote blabla'); await execCommand(client, 'mknote blabla');
await execCommand(client, "mv 'note*' nb2"); await execCommand(client, 'mv \'note*\' nb2');
notes1 = await Note.previews(f1.id); notes1 = await Note.previews(f1.id);
notes2 = await Note.previews(f2.id); notes2 = await Note.previews(f2.id);
assertEquals(1, notes1.length); assertEquals(1, notes1.length);
assertEquals(4, notes2.length); assertEquals(4, notes2.length);
} };
async function main(argv) { async function main(argv) {
await fs.remove(baseDir); await fs.remove(baseDir);
@@ -243,7 +236,7 @@ async function main(argv) {
} }
} }
main(process.argv).catch((error) => { main(process.argv).catch(error => {
console.info(''); console.info('');
logger.error(error); logger.error(error);
}); });

View File

@@ -16,7 +16,7 @@ cliUtils.printArray = function(logFunction, rows, headers = null) {
for (let i = 0; i < rows.length; i++) { for (let i = 0; i < rows.length; i++) {
let row = rows[i]; let row = rows[i];
for (let j = 0; j < row.length; j++) { for (let j = 0; j < row.length; j++) {
let item = row[j]; let item = row[j];
let width = item ? item.toString().length : 0; let width = item ? item.toString().length : 0;
@@ -26,7 +26,6 @@ cliUtils.printArray = function(logFunction, rows, headers = null) {
} }
} }
let lines = [];
for (let row = 0; row < rows.length; row++) { for (let row = 0; row < rows.length; row++) {
let line = []; let line = [];
for (let col = 0; col < colWidths.length; col++) { for (let col = 0; col < colWidths.length; col++) {
@@ -37,7 +36,7 @@ cliUtils.printArray = function(logFunction, rows, headers = null) {
} }
logFunction(line.join(' ')); logFunction(line.join(' '));
} }
} };
cliUtils.parseFlags = function(flags) { cliUtils.parseFlags = function(flags) {
let output = {}; let output = {};
@@ -56,7 +55,7 @@ cliUtils.parseFlags = function(flags) {
} }
} }
return output; return output;
} };
cliUtils.parseCommandArg = function(arg) { cliUtils.parseCommandArg = function(arg) {
if (arg.length <= 2) throw new Error('Invalid command arg: ' + arg); if (arg.length <= 2) throw new Error('Invalid command arg: ' + arg);
@@ -72,7 +71,7 @@ cliUtils.parseCommandArg = function(arg) {
} else { } else {
throw new Error('Invalid command arg: ' + arg); throw new Error('Invalid command arg: ' + arg);
} }
} };
cliUtils.makeCommandArgs = function(cmd, argv) { cliUtils.makeCommandArgs = function(cmd, argv) {
let cmdUsage = cmd.usage(); let cmdUsage = cmd.usage();
@@ -85,7 +84,6 @@ cliUtils.makeCommandArgs = function(cmd, argv) {
for (let i = 0; i < options.length; i++) { for (let i = 0; i < options.length; i++) {
if (options[i].length != 2) throw new Error('Invalid options: ' + options[i]); if (options[i].length != 2) throw new Error('Invalid options: ' + options[i]);
let flags = options[i][0]; let flags = options[i][0];
let text = options[i][1];
flags = cliUtils.parseFlags(flags); flags = cliUtils.parseFlags(flags);
@@ -125,27 +123,27 @@ cliUtils.makeCommandArgs = function(cmd, argv) {
output.options = argOptions; output.options = argOptions;
return output; return output;
} };
cliUtils.promptMcq = function(message, answers) { cliUtils.promptMcq = function(message, answers) {
const readline = require('readline'); const readline = require('readline');
const rl = readline.createInterface({ const rl = readline.createInterface({
input: process.stdin, input: process.stdin,
output: process.stdout output: process.stdout,
}); });
message += "\n\n"; message += '\n\n';
for (let n in answers) { for (let n in answers) {
if (!answers.hasOwnProperty(n)) continue; if (!answers.hasOwnProperty(n)) continue;
message += _('%s: %s', n, answers[n]) + "\n"; message += _('%s: %s', n, answers[n]) + '\n';
} }
message += "\n"; message += '\n';
message += _('Your choice: '); message += _('Your choice: ');
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
rl.question(message, (answer) => { rl.question(message, answer => {
rl.close(); rl.close();
if (!(answer in answers)) { if (!(answer in answers)) {
@@ -156,7 +154,7 @@ cliUtils.promptMcq = function(message, answers) {
resolve(answer); resolve(answer);
}); });
}); });
} };
cliUtils.promptConfirm = function(message, answers = null) { cliUtils.promptConfirm = function(message, answers = null) {
if (!answers) answers = [_('Y'), _('n')]; if (!answers) answers = [_('Y'), _('n')];
@@ -164,19 +162,19 @@ cliUtils.promptConfirm = function(message, answers = null) {
const rl = readline.createInterface({ const rl = readline.createInterface({
input: process.stdin, input: process.stdin,
output: process.stdout output: process.stdout,
}); });
message += ' (' + answers.join('/') + ')'; message += ' (' + answers.join('/') + ')';
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
rl.question(message + ' ', (answer) => { rl.question(message + ' ', answer => {
const ok = !answer || answer.toLowerCase() == answers[0].toLowerCase(); const ok = !answer || answer.toLowerCase() == answers[0].toLowerCase();
rl.close(); rl.close();
resolve(ok); resolve(ok);
}); });
}); });
} };
// Note: initialText is there to have the same signature as statusBar.prompt() so that // Note: initialText is there to have the same signature as statusBar.prompt() so that
// it can be a drop-in replacement, however initialText is not used (and cannot be // it can be a drop-in replacement, however initialText is not used (and cannot be
@@ -189,10 +187,9 @@ cliUtils.prompt = function(initialText = '', promptString = ':', options = null)
const mutableStdout = new Writable({ const mutableStdout = new Writable({
write: function(chunk, encoding, callback) { write: function(chunk, encoding, callback) {
if (!this.muted) if (!this.muted) process.stdout.write(chunk, encoding);
process.stdout.write(chunk, encoding);
callback(); callback();
} },
}); });
const rl = readline.createInterface({ const rl = readline.createInterface({
@@ -204,15 +201,15 @@ cliUtils.prompt = function(initialText = '', promptString = ':', options = null)
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
mutableStdout.muted = false; mutableStdout.muted = false;
rl.question(promptString, (answer) => { rl.question(promptString, answer => {
rl.close(); rl.close();
if (!!options.secure) this.stdout_(''); if (options.secure) this.stdout_('');
resolve(answer); resolve(answer);
}); });
mutableStdout.muted = !!options.secure; mutableStdout.muted = !!options.secure;
}); });
} };
let redrawStarted_ = false; let redrawStarted_ = false;
let redrawLastLog_ = null; let redrawLastLog_ = null;
@@ -220,7 +217,7 @@ let redrawLastUpdateTime_ = 0;
cliUtils.setStdout = function(v) { cliUtils.setStdout = function(v) {
this.stdout_ = v; this.stdout_ = v;
} };
cliUtils.redraw = function(s) { cliUtils.redraw = function(s) {
const now = time.unixMs(); const now = time.unixMs();
@@ -233,8 +230,8 @@ cliUtils.redraw = function(s) {
redrawLastLog_ = s; redrawLastLog_ = s;
} }
redrawStarted_ = true; redrawStarted_ = true;
} };
cliUtils.redrawDone = function() { cliUtils.redrawDone = function() {
if (!redrawStarted_) return; if (!redrawStarted_) return;
@@ -245,6 +242,6 @@ cliUtils.redrawDone = function() {
redrawLastLog_ = null; redrawLastLog_ = null;
redrawStarted_ = false; redrawStarted_ = false;
} };
module.exports = { cliUtils }; module.exports = { cliUtils };

View File

@@ -1,19 +1,12 @@
const { BaseCommand } = require('./base-command.js'); 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 BaseItem = require('lib/models/BaseItem');
const BaseModel = require('lib/BaseModel'); const BaseModel = require('lib/BaseModel');
const Setting = require('lib/models/Setting.js');
const { toTitleCase } = require('lib/string-utils.js'); const { toTitleCase } = require('lib/string-utils.js');
const { reg } = require('lib/registry.js'); const { reg } = require('lib/registry.js');
const markdownUtils = require('lib/markdownUtils'); const markdownUtils = require('lib/markdownUtils');
const { Database } = require('lib/database.js'); const { Database } = require('lib/database.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'apidoc'; return 'apidoc';
} }
@@ -23,15 +16,19 @@ class Command extends BaseCommand {
} }
createPropertiesTable(tableFields) { createPropertiesTable(tableFields) {
const headers = [ const headers = [
{ name: 'name', label: 'Name' }, { name: 'name', label: 'Name' },
{ name: 'type', label: 'Type', filter: (value) => { {
return Database.enumName('fieldType', value); name: 'type',
}}, label: 'Type',
{ name: 'description', label: 'Description' }, filter: value => {
]; return Database.enumName('fieldType', value);
},
return markdownUtils.createMarkdownTable(headers, tableFields); },
{ name: 'description', label: 'Description' },
];
return markdownUtils.createMarkdownTable(headers, tableFields);
} }
async action(args) { async action(args) {
@@ -70,8 +67,8 @@ class Command extends BaseCommand {
lines.push('}'); lines.push('}');
lines.push('```'); lines.push('```');
lines.push(''); lines.push('');
lines.push('# Authorisation') lines.push('# Authorisation');
lines.push(''); 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('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('');
@@ -293,7 +290,6 @@ class Command extends BaseCommand {
this.stdout(lines.join('\n')); this.stdout(lines.join('\n'));
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -3,10 +3,8 @@ const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const { shim } = require('lib/shim.js'); const { shim } = require('lib/shim.js');
const fs = require('fs-extra');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'attach <note> <file>'; return 'attach <note> <file>';
} }
@@ -26,7 +24,6 @@ class Command extends BaseCommand {
await shim.attachFileToNote(note, localFilePath); await shim.attachFileToNote(note, localFilePath);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,11 +2,9 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'cat <note>'; return 'cat <note>';
} }
@@ -16,9 +14,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['-v, --verbose', _('Displays the complete information about note.')]];
['-v, --verbose', _('Displays the complete information about note.')],
];
} }
async action(args) { async action(args) {
@@ -30,10 +26,13 @@ class Command extends BaseCommand {
const content = args.options.verbose ? await Note.serialize(item) : await Note.serializeForEdit(item); const content = args.options.verbose ? await Note.serialize(item) : await Note.serializeForEdit(item);
this.stdout(content); this.stdout(content);
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -4,25 +4,22 @@ const { app } = require('./app.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'config [name] [value]'; return 'config [name] [value]';
} }
description() { description() {
return _("Gets or sets a config value. If [value] is not provided, it will show the value of [name]. If neither [name] nor [value] is provided, it will list the current configuration."); return _('Gets or sets a config value. If [value] is not provided, it will show the value of [name]. If neither [name] nor [value] is provided, it will list the current configuration.');
} }
options() { options() {
return [ return [['-v, --verbose', _('Also displays unset and hidden config variables.')]];
['-v, --verbose', _('Also displays unset and hidden config variables.')],
];
} }
async action(args) { async action(args) {
const verbose = args.options.verbose; const verbose = args.options.verbose;
const renderKeyValue = (name) => { const renderKeyValue = name => {
const md = Setting.settingMetadata(name); const md = Setting.settingMetadata(name);
let value = Setting.value(name); let value = Setting.value(name);
if (typeof value === 'object' || Array.isArray(value)) value = JSON.stringify(value); if (typeof value === 'object' || Array.isArray(value)) value = JSON.stringify(value);
@@ -33,7 +30,7 @@ class Command extends BaseCommand {
} else { } else {
return _('%s = %s', name, value); return _('%s = %s', name, value);
} }
} };
if (!args.name && !args.value) { if (!args.name && !args.value) {
let keys = Setting.keys(!verbose, 'cli'); let keys = Setting.keys(!verbose, 'cli');
@@ -43,15 +40,23 @@ class Command extends BaseCommand {
if (!verbose && !value) continue; if (!verbose && !value) continue;
this.stdout(renderKeyValue(keys[i])); this.stdout(renderKeyValue(keys[i]));
} }
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
return; return;
} }
if (args.name && !args.value) { if (args.name && !args.value) {
this.stdout(renderKeyValue(args.name)); this.stdout(renderKeyValue(args.name));
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
return; return;
} }
@@ -64,7 +69,6 @@ class Command extends BaseCommand {
await Setting.saveAll(); await Setting.saveAll();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,11 +2,9 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'cp <note> [notebook]'; return 'cp <note> [notebook]';
} }
@@ -33,7 +31,6 @@ class Command extends BaseCommand {
Note.updateGeolocation(newNote.id); Note.updateGeolocation(newNote.id);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,12 +2,10 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const { time } = require('lib/time-utils.js'); const { time } = require('lib/time-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'done <note>'; return 'done <note>';
} }
@@ -35,7 +33,6 @@ class Command extends BaseCommand {
async action(args) { async action(args) {
await Command.handleAction(this, args, true); await Command.handleAction(this, args, true);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,12 +1,9 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js');
const { _ } = require('lib/locale.js');
const Folder = require('lib/models/Folder.js'); const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const Tag = require('lib/models/Tag.js'); const Tag = require('lib/models/Tag.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'dump'; return 'dump';
} }
@@ -35,10 +32,9 @@ class Command extends BaseCommand {
} }
items = items.concat(tags); items = items.concat(tags);
this.stdout(JSON.stringify(items)); this.stdout(JSON.stringify(items));
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,9 +1,7 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const { cliUtils } = require('./cli-utils.js');
const EncryptionService = require('lib/services/EncryptionService'); const EncryptionService = require('lib/services/EncryptionService');
const DecryptionWorker = require('lib/services/DecryptionWorker'); const DecryptionWorker = require('lib/services/DecryptionWorker');
const MasterKey = require('lib/models/MasterKey');
const BaseItem = require('lib/models/BaseItem'); const BaseItem = require('lib/models/BaseItem');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { shim } = require('lib/shim'); const { shim } = require('lib/shim');
@@ -12,7 +10,6 @@ const imageType = require('image-type');
const readChunk = require('read-chunk'); const readChunk = require('read-chunk');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'e2ee <command> [path]'; return 'e2ee <command> [path]';
} }
@@ -35,7 +32,7 @@ class Command extends BaseCommand {
const options = args.options; const options = args.options;
const askForMasterKey = async (error) => { const askForMasterKey = async error => {
const masterKeyId = error.masterKeyId; const masterKeyId = error.masterKeyId;
const password = await this.prompt(_('Enter master password:'), { type: 'string', secure: true }); const password = await this.prompt(_('Enter master password:'), { type: 'string', secure: true });
if (!password) { if (!password) {
@@ -45,7 +42,7 @@ class Command extends BaseCommand {
Setting.setObjectKey('encryption.passwordCache', masterKeyId, password); Setting.setObjectKey('encryption.passwordCache', masterKeyId, password);
await EncryptionService.instance().loadMasterKeysFromSettings(); await EncryptionService.instance().loadMasterKeysFromSettings();
return true; return true;
} };
if (args.command === 'enable') { if (args.command === 'enable') {
const password = options.password ? options.password.toString() : await this.prompt(_('Enter master password:'), { type: 'string', secure: true }); const password = options.password ? options.password.toString() : await this.prompt(_('Enter master password:'), { type: 'string', secure: true });
@@ -100,7 +97,7 @@ class Command extends BaseCommand {
while (true) { while (true) {
try { try {
const outputDir = options.output ? options.output : require('os').tmpdir(); const outputDir = options.output ? options.output : require('os').tmpdir();
let outFile = outputDir + '/' + pathUtils.filename(args.path) + '.' + Date.now() + '.bin'; let outFile = outputDir + '/' + pathUtils.filename(args.path) + '.' + Date.now() + '.bin';
await EncryptionService.instance().decryptFile(args.path, outFile); await EncryptionService.instance().decryptFile(args.path, outFile);
const buffer = await readChunk(outFile, 0, 64); const buffer = await readChunk(outFile, 0, 64);
const detectedType = imageType(buffer); const detectedType = imageType(buffer);
@@ -128,19 +125,17 @@ class Command extends BaseCommand {
if (args.command === 'target-status') { if (args.command === 'target-status') {
const fs = require('fs-extra'); const fs = require('fs-extra');
const pathUtils = require('lib/path-utils.js');
const fsDriver = new (require('lib/fs-driver-node.js').FsDriverNode)();
const targetPath = args.path; const targetPath = args.path;
if (!targetPath) throw new Error('Please specify the sync target path.'); if (!targetPath) throw new Error('Please specify the sync target path.');
const dirPaths = function(targetPath) { const dirPaths = function(targetPath) {
let paths = []; let paths = [];
fs.readdirSync(targetPath).forEach((path) => { fs.readdirSync(targetPath).forEach(path => {
paths.push(path); paths.push(path);
}); });
return paths; return paths;
} };
let itemCount = 0; let itemCount = 0;
let resourceCount = 0; let resourceCount = 0;
@@ -224,7 +219,6 @@ class Command extends BaseCommand {
return; return;
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -3,15 +3,11 @@ const { BaseCommand } = require('./base-command.js');
const { uuid } = require('lib/uuid.js'); const { uuid } = require('lib/uuid.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const { cliUtils } = require('./cli-utils.js');
const { time } = require('lib/time-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'edit <note>'; return 'edit <note>';
} }
@@ -21,20 +17,19 @@ class Command extends BaseCommand {
} }
async action(args) { async action(args) {
let watcher = null;
let tempFilePath = null; let tempFilePath = null;
const onFinishedEditing = async () => { const onFinishedEditing = async () => {
if (tempFilePath) fs.removeSync(tempFilePath); if (tempFilePath) fs.removeSync(tempFilePath);
} };
const textEditorPath = () => { const textEditorPath = () => {
if (Setting.value('editor')) return Setting.value('editor'); if (Setting.value('editor')) return Setting.value('editor');
if (process.env.EDITOR) return process.env.EDITOR; if (process.env.EDITOR) return process.env.EDITOR;
throw new Error(_('No text editor is defined. Please set it using `config editor <editor-path>`')); throw new Error(_('No text editor is defined. Please set it using `config editor <editor-path>`'));
} };
try { try {
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
// Load note or create it if it doesn't exist // Load note or create it if it doesn't exist
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
@@ -76,18 +71,30 @@ class Command extends BaseCommand {
this.logger().info('Disabling fullscreen...'); this.logger().info('Disabling fullscreen...');
app().gui().showModalOverlay(_('Starting to edit note. Close the editor to get back to the prompt.')); app()
await app().gui().forceRender(); .gui()
const termState = app().gui().termSaveState(); .showModalOverlay(_('Starting to edit note. Close the editor to get back to the prompt.'));
await app()
.gui()
.forceRender();
const termState = app()
.gui()
.termSaveState();
const spawnSync = require('child_process').spawnSync; const spawnSync = require('child_process').spawnSync;
const result = spawnSync(editorPath, editorArgs, { stdio: 'inherit' }); const result = spawnSync(editorPath, editorArgs, { stdio: 'inherit' });
if (result.error) this.stdout(_('Error opening note in editor: %s', result.error.message)); if (result.error) this.stdout(_('Error opening note in editor: %s', result.error.message));
app().gui().termRestoreState(termState); app()
app().gui().hideModalOverlay(); .gui()
app().gui().forceRender(); .termRestoreState(termState);
app()
.gui()
.hideModalOverlay();
app()
.gui()
.forceRender();
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
// Save the note and clean up // Save the note and clean up
@@ -107,13 +114,11 @@ class Command extends BaseCommand {
}); });
await onFinishedEditing(); await onFinishedEditing();
} catch (error) {
} catch(error) {
await onFinishedEditing(); await onFinishedEditing();
throw error; throw error;
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -3,7 +3,6 @@ const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'exit'; return 'exit';
} }
@@ -19,7 +18,6 @@ class Command extends BaseCommand {
async action(args) { async action(args) {
await app().exit(); await app().exit();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,13 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { Database } = require('lib/database.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { _ } = require('lib/locale.js');
const { ReportService } = require('lib/services/report.js'); const { ReportService } = require('lib/services/report.js');
const fs = require('fs-extra'); const fs = require('fs-extra');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'export-sync-status'; return 'export-sync-status';
} }
@@ -23,14 +20,17 @@ class Command extends BaseCommand {
async action(args) { async action(args) {
const service = new ReportService(); const service = new ReportService();
const csv = await service.basicItemList({ format: 'csv' }); const csv = await service.basicItemList({ format: 'csv' });
const filePath = Setting.value('profileDir') + '/syncReport-' + (new Date()).getTime() + '.csv'; const filePath = Setting.value('profileDir') + '/syncReport-' + new Date().getTime() + '.csv';
await fs.writeFileSync(filePath, csv); await fs.writeFileSync(filePath, csv);
this.stdout('Sync status exported to ' + filePath); this.stdout('Sync status exported to ' + filePath);
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,14 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const InteropService = require('lib/services/InteropService.js'); const InteropService = require('lib/services/InteropService.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Note = require('lib/models/Note.js');
const { reg } = require('lib/registry.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const fs = require('fs-extra');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'export <path>'; return 'export <path>';
} }
@@ -19,17 +15,14 @@ class Command extends BaseCommand {
options() { options() {
const service = new InteropService(); const service = new InteropService();
const formats = service.modules() const formats = service
.modules()
.filter(m => m.type === 'exporter') .filter(m => m.type === 'exporter')
.map(m => m.format + (m.description ? ' (' + m.description + ')' : '')); .map(m => m.format + (m.description ? ' (' + m.description + ')' : ''));
return [ return [['--format <format>', _('Destination format: %s', formats.join(', '))], ['--note <note>', _('Exports only the given note.')], ['--notebook <notebook>', _('Exports only the given notebook.')]];
['--format <format>', _('Destination format: %s', formats.join(', '))],
['--note <note>', _('Exports only the given note.')],
['--notebook <notebook>', _('Exports only the given notebook.')],
];
} }
async action(args) { async action(args) {
let exportOptions = {}; let exportOptions = {};
exportOptions.path = args.path; exportOptions.path = args.path;
@@ -37,25 +30,20 @@ class Command extends BaseCommand {
exportOptions.format = args.options.format ? args.options.format : 'jex'; exportOptions.format = args.options.format ? args.options.format : 'jex';
if (args.options.note) { if (args.options.note) {
const notes = await app().loadItems(BaseModel.TYPE_NOTE, args.options.note, { parent: app().currentFolder() }); const notes = await app().loadItems(BaseModel.TYPE_NOTE, args.options.note, { parent: app().currentFolder() });
if (!notes.length) throw new Error(_('Cannot find "%s".', args.options.note)); if (!notes.length) throw new Error(_('Cannot find "%s".', args.options.note));
exportOptions.sourceNoteIds = notes.map((n) => n.id); exportOptions.sourceNoteIds = notes.map(n => n.id);
} else if (args.options.notebook) { } else if (args.options.notebook) {
const folders = await app().loadItems(BaseModel.TYPE_FOLDER, args.options.notebook); const folders = await app().loadItems(BaseModel.TYPE_FOLDER, args.options.notebook);
if (!folders.length) throw new Error(_('Cannot find "%s".', args.options.notebook)); if (!folders.length) throw new Error(_('Cannot find "%s".', args.options.notebook));
exportOptions.sourceFolderIds = folders.map((n) => n.id); exportOptions.sourceFolderIds = folders.map(n => n.id);
} }
const service = new InteropService(); const service = new InteropService();
const result = await service.export(exportOptions); const result = await service.export(exportOptions);
result.warnings.map((w) => this.stdout(w)); result.warnings.map(w => this.stdout(w));
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,11 +2,9 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'geoloc <note>'; return 'geoloc <note>';
} }
@@ -23,9 +21,10 @@ class Command extends BaseCommand {
const url = Note.geolocationUrl(item); const url = Note.geolocationUrl(item);
this.stdout(url); this.stdout(url);
app().gui().showConsole(); app()
.gui()
.showConsole();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,14 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { renderCommandHelp } = require('./help-utils.js'); const { renderCommandHelp } = require('./help-utils.js');
const { Database } = require('lib/database.js');
const Setting = require('lib/models/Setting.js');
const { wrap } = require('lib/string-utils.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const { cliUtils } = require('./cli-utils.js'); const { cliUtils } = require('./cli-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'help [command]'; return 'help [command]';
} }
@@ -28,7 +24,7 @@ class Command extends BaseCommand {
output.push(command); output.push(command);
} }
output.sort((a, b) => a.name() < b.name() ? -1 : +1); output.sort((a, b) => (a.name() < b.name() ? -1 : +1));
return output; return output;
} }
@@ -40,31 +36,37 @@ class Command extends BaseCommand {
this.stdout(_('For information on how to customise the shortcuts please visit %s', 'https://joplinapp.org/terminal/#shortcuts')); this.stdout(_('For information on how to customise the shortcuts please visit %s', 'https://joplinapp.org/terminal/#shortcuts'));
this.stdout(''); this.stdout('');
if (app().gui().isDummy()) { if (
app()
.gui()
.isDummy()
) {
throw new Error(_('Shortcuts are not available in CLI mode.')); throw new Error(_('Shortcuts are not available in CLI mode.'));
} }
const keymap = app().gui().keymap(); const keymap = app()
.gui()
.keymap();
let rows = []; let rows = [];
for (let i = 0; i < keymap.length; i++) { for (let i = 0; i < keymap.length; i++) {
const item = keymap[i]; const item = keymap[i];
const keys = item.keys.map((k) => k === ' ' ? '(SPACE)' : k); const keys = item.keys.map(k => (k === ' ' ? '(SPACE)' : k));
rows.push([keys.join(', '), item.command]); rows.push([keys.join(', '), item.command]);
} }
cliUtils.printArray(this.stdout.bind(this), rows); cliUtils.printArray(this.stdout.bind(this), rows);
} else if (args.command === 'all') { } else if (args.command === 'all') {
const commands = this.allCommands(); const commands = this.allCommands();
const output = commands.map((c) => renderCommandHelp(c)); const output = commands.map(c => renderCommandHelp(c));
this.stdout(output.join('\n\n')); this.stdout(output.join('\n\n'));
} else if (args.command) { } else if (args.command) {
const command = app().findCommandByName(args['command']); const command = app().findCommandByName(args['command']);
if (!command) throw new Error(_('Cannot find "%s".', args.command)); if (!command) throw new Error(_('Cannot find "%s".', args.command));
this.stdout(renderCommandHelp(command, stdoutWidth)); this.stdout(renderCommandHelp(command, stdoutWidth));
} else { } else {
const commandNames = this.allCommands().map((a) => a.name()); const commandNames = this.allCommands().map(a => a.name());
this.stdout(_('Type `help [command]` for more information about a command; or type `help all` for the complete usage information.')); this.stdout(_('Type `help [command]` for more information about a command; or type `help all` for the complete usage information.'));
this.stdout(''); this.stdout('');
@@ -82,10 +84,13 @@ class Command extends BaseCommand {
this.stdout(_('For the list of keyboard shortcuts and config options, type `help keymap`')); this.stdout(_('For the list of keyboard shortcuts and config options, type `help keymap`'));
} }
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,17 +1,11 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const InteropService = require('lib/services/InteropService.js'); const InteropService = require('lib/services/InteropService.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Note = require('lib/models/Note.js');
const { filename, basename, fileExtension } = require('lib/path-utils.js');
const { importEnex } = require('lib/import-enex');
const { cliUtils } = require('./cli-utils.js'); const { cliUtils } = require('./cli-utils.js');
const { reg } = require('lib/registry.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const fs = require('fs-extra');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'import <path> [notebook]'; return 'import <path> [notebook]';
} }
@@ -22,14 +16,14 @@ class Command extends BaseCommand {
options() { options() {
const service = new InteropService(); const service = new InteropService();
const formats = service.modules().filter(m => m.type === 'importer').map(m => m.format); const formats = service
.modules()
.filter(m => m.type === 'importer')
.map(m => m.format);
return [ return [['--format <format>', _('Source format: %s', ['auto'].concat(formats).join(', '))], ['-f, --force', _('Do not ask for confirmation.')]];
['--format <format>', _('Source format: %s', (['auto'].concat(formats)).join(', '))],
['-f, --force', _('Do not ask for confirmation.')],
];
} }
async action(args) { async action(args) {
let folder = await app().loadItem(BaseModel.TYPE_FOLDER, args.notebook); let folder = await app().loadItem(BaseModel.TYPE_FOLDER, args.notebook);
@@ -44,7 +38,7 @@ class Command extends BaseCommand {
// onProgress/onError supported by Enex import only // onProgress/onError supported by Enex import only
importOptions.onProgress = (progressState) => { importOptions.onProgress = progressState => {
let line = []; let line = [];
line.push(_('Found: %d.', progressState.loaded)); line.push(_('Found: %d.', progressState.loaded));
line.push(_('Created: %d.', progressState.created)); line.push(_('Created: %d.', progressState.created));
@@ -56,20 +50,21 @@ class Command extends BaseCommand {
cliUtils.redraw(lastProgress); cliUtils.redraw(lastProgress);
}; };
importOptions.onError = (error) => { importOptions.onError = error => {
let s = error.trace ? error.trace : error.toString(); let s = error.trace ? error.trace : error.toString();
this.stdout(s); this.stdout(s);
}; };
app().gui().showConsole(); app()
.gui()
.showConsole();
this.stdout(_('Importing notes...')); this.stdout(_('Importing notes...'));
const service = new InteropService(); const service = new InteropService();
const result = await service.import(importOptions); const result = await service.import(importOptions);
result.warnings.map((w) => this.stdout(w)); result.warnings.map(w => this.stdout(w));
cliUtils.redrawDone(); cliUtils.redrawDone();
if (lastProgress) this.stdout(_('The notes have been imported: %s', lastProgress)); if (lastProgress) this.stdout(_('The notes have been imported: %s', lastProgress));
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -10,7 +10,6 @@ const { time } = require('lib/time-utils.js');
const { cliUtils } = require('./cli-utils.js'); const { cliUtils } = require('./cli-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'ls [note-pattern]'; return 'ls [note-pattern]';
} }
@@ -24,14 +23,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['-n, --limit <num>', _('Displays only the first top <num> notes.')], ['-s, --sort <field>', _('Sorts the item by <field> (eg. title, updated_time, created_time).')], ['-r, --reverse', _('Reverses the sorting order.')], ['-t, --type <type>', _('Displays only the items of the specific type(s). Can be `n` for notes, `t` for to-dos, or `nt` for notes and to-dos (eg. `-tt` would display only the to-dos, while `-ttd` would display notes and to-dos.')], ['-f, --format <format>', _('Either "text" or "json"')], ['-l, --long', _('Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, TODO_CHECKED (for to-dos), TITLE')]];
['-n, --limit <num>', _('Displays only the first top <num> notes.')],
['-s, --sort <field>', _('Sorts the item by <field> (eg. title, updated_time, created_time).')],
['-r, --reverse', _('Reverses the sorting order.')],
['-t, --type <type>', _('Displays only the items of the specific type(s). Can be `n` for notes, `t` for to-dos, or `nt` for notes and to-dos (eg. `-tt` would display only the to-dos, while `-ttd` would display notes and to-dos.')],
['-f, --format <format>', _('Either "text" or "json"')],
['-l, --long', _('Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, TODO_CHECKED (for to-dos), TITLE')],
];
} }
async action(args) { async action(args) {
@@ -105,7 +97,7 @@ class Command extends BaseCommand {
if (hasTodos) { if (hasTodos) {
if (item.is_todo) { if (item.is_todo) {
row.push(sprintf('[%s]', !!item.todo_completed ? 'X' : ' ')); row.push(sprintf('[%s]', item.todo_completed ? 'X' : ' '));
} else { } else {
row.push(' '); row.push(' ');
} }
@@ -118,9 +110,7 @@ class Command extends BaseCommand {
cliUtils.printArray(this.stdout.bind(this), rows); cliUtils.printArray(this.stdout.bind(this), rows);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,10 +2,8 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const Folder = require('lib/models/Folder.js'); const Folder = require('lib/models/Folder.js');
const { reg } = require('lib/registry.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'mkbook <new-notebook>'; return 'mkbook <new-notebook>';
} }
@@ -15,10 +13,9 @@ class Command extends BaseCommand {
} }
async action(args) { async action(args) {
let folder = await Folder.save({ title: args['new-notebook'] }, { userSideValidation: true }); let folder = await Folder.save({ title: args['new-notebook'] }, { userSideValidation: true });
app().switchCurrentFolder(folder); app().switchCurrentFolder(folder);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -4,7 +4,6 @@ const { _ } = require('lib/locale.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'mknote <new-note>'; return 'mknote <new-note>';
} }
@@ -26,7 +25,6 @@ class Command extends BaseCommand {
app().switchCurrentFolder(app().currentFolder()); app().switchCurrentFolder(app().currentFolder());
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -4,7 +4,6 @@ const { _ } = require('lib/locale.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'mktodo <new-todo>'; return 'mktodo <new-todo>';
} }
@@ -27,7 +26,6 @@ class Command extends BaseCommand {
app().switchCurrentFolder(app().currentFolder()); app().switchCurrentFolder(app().currentFolder());
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -6,7 +6,6 @@ const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'mv <note> [notebook]'; return 'mv <note> [notebook]';
} }
@@ -18,7 +17,7 @@ class Command extends BaseCommand {
async action(args) { async action(args) {
const pattern = args['note']; const pattern = args['note'];
const destination = args['notebook']; const destination = args['notebook'];
const folder = await Folder.loadByField('title', destination); const folder = await Folder.loadByField('title', destination);
if (!folder) throw new Error(_('Cannot find "%s".', destination)); if (!folder) throw new Error(_('Cannot find "%s".', destination));
@@ -29,7 +28,6 @@ class Command extends BaseCommand {
await Note.moveToFolder(notes[i].id, folder.id); await Note.moveToFolder(notes[i].id, folder.id);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -6,7 +6,6 @@ const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'ren <item> <name>'; return 'ren <item> <name>';
} }
@@ -35,7 +34,6 @@ class Command extends BaseCommand {
await Note.save(newItem); await Note.save(newItem);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,14 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseItem = require('lib/models/BaseItem.js');
const Folder = require('lib/models/Folder.js'); const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const { cliUtils } = require('./cli-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'rmbook <notebook>'; return 'rmbook <notebook>';
} }
@@ -18,9 +14,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['-f, --force', _('Deletes the notebook without asking for confirmation.')]];
['-f, --force', _('Deletes the notebook without asking for confirmation.')],
];
} }
async action(args) { async action(args) {
@@ -34,7 +28,6 @@ class Command extends BaseCommand {
await Folder.delete(folder.id); await Folder.delete(folder.id);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,14 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseItem = require('lib/models/BaseItem.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const { cliUtils } = require('./cli-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'rmnote <note-pattern>'; return 'rmnote <note-pattern>';
} }
@@ -18,9 +14,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['-f, --force', _('Deletes the notes without asking for confirmation.')]];
['-f, --force', _('Deletes the notes without asking for confirmation.')],
];
} }
async action(args) { async action(args) {
@@ -32,10 +26,9 @@ class Command extends BaseCommand {
const ok = force ? true : await this.prompt(notes.length > 1 ? _('%d notes match this pattern. Delete them?', notes.length) : _('Delete note?'), { booleanAnswerDefault: 'n' }); const ok = force ? true : await this.prompt(notes.length > 1 ? _('%d notes match this pattern. Delete them?', notes.length) : _('Delete note?'), { booleanAnswerDefault: 'n' });
if (!ok) return; if (!ok) return;
let ids = notes.map((n) => n.id); let ids = notes.map(n => n.id);
await Note.batchDelete(ids); await Note.batchDelete(ids);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,15 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js'); const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js');
const { sprintf } = require('sprintf-js');
const { time } = require('lib/time-utils.js');
const { uuid } = require('lib/uuid.js'); const { uuid } = require('lib/uuid.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'search <pattern> [notebook]'; return 'search <pattern> [notebook]';
} }
@@ -50,7 +45,6 @@ class Command extends BaseCommand {
id: searchId, id: searchId,
}); });
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -0,0 +1,57 @@
const { BaseCommand } = require('./base-command.js');
const { _ } = require('lib/locale.js');
const Setting = require('lib/models/Setting.js');
const { Logger } = require('lib/logger.js');
const { shim } = require('lib/shim');
class Command extends BaseCommand {
usage() {
return 'server <command>';
}
description() {
return _('Start, stop or check the API server. To specify on which port it should run, set the api.port config variable. Commands are (%s).', ['start', 'stop', 'status'].join('|')) + ' This is an experimental feature - use at your own risks! It is recommended that the server runs off its own separate profile so that no two CLI instances access that profile at the same time. Use --profile to specify the profile path.';
}
async action(args) {
const command = args.command;
const ClipperServer = require('lib/ClipperServer');
const stdoutFn = (s) => this.stdout(s);
const clipperLogger = new Logger();
clipperLogger.addTarget('file', { path: Setting.value('profileDir') + '/log-clipper.txt' });
clipperLogger.addTarget('console', { console: {
info: stdoutFn,
warn: stdoutFn,
error: stdoutFn,
}});
ClipperServer.instance().setDispatch(action => {});
ClipperServer.instance().setLogger(clipperLogger);
const pidPath = Setting.value('profileDir') + '/clipper-pid.txt';
const runningOnPort = await ClipperServer.instance().isRunning();
if (command === 'start') {
if (runningOnPort) {
this.stdout(_('Server is already running on port %d', runningOnPort));
} else {
await shim.fsDriver().writeFile(pidPath, process.pid.toString(), 'utf-8');
await ClipperServer.instance().start(); // Never exit
}
} else if (command === 'status') {
this.stdout(runningOnPort ? _('Server is running on port %d', runningOnPort) : _('Server is not running.'));
} else if (command === 'stop') {
if (!runningOnPort) {
this.stdout(_('Server is not running.'));
return;
}
const pid = await shim.fsDriver().readFile(pidPath);
if (!pid) return;
process.kill(pid, 'SIGTERM');
}
}
}
module.exports = Command;

View File

@@ -3,12 +3,9 @@ const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const { Database } = require('lib/database.js'); const { Database } = require('lib/database.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const BaseItem = require('lib/models/BaseItem.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'set <note> <name> [value]'; return 'set <note> <name> [value]';
} }
@@ -45,7 +42,6 @@ class Command extends BaseCommand {
await Note.save(newNote); await Note.save(newNote);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,12 +1,10 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { Database } = require('lib/database.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const { ReportService } = require('lib/services/report.js'); const { ReportService } = require('lib/services/report.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'status'; return 'status';
} }
@@ -34,10 +32,13 @@ class Command extends BaseCommand {
} }
} }
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -3,7 +3,6 @@ const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const { OneDriveApiNodeUtils } = require('./onedrive-api-node-utils.js'); const { OneDriveApiNodeUtils } = require('./onedrive-api-node-utils.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const BaseItem = require('lib/models/BaseItem.js');
const ResourceFetcher = require('lib/services/ResourceFetcher'); const ResourceFetcher = require('lib/services/ResourceFetcher');
const { Synchronizer } = require('lib/synchronizer.js'); const { Synchronizer } = require('lib/synchronizer.js');
const { reg } = require('lib/registry.js'); const { reg } = require('lib/registry.js');
@@ -14,7 +13,6 @@ const fs = require('fs-extra');
const SyncTargetRegistry = require('lib/SyncTargetRegistry'); const SyncTargetRegistry = require('lib/SyncTargetRegistry');
class Command extends BaseCommand { class Command extends BaseCommand {
constructor() { constructor() {
super(); super();
this.syncTargetId_ = null; this.syncTargetId_ = null;
@@ -31,9 +29,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['--target <target>', _('Sync to provided target (defaults to sync.target config value)')]];
['--target <target>', _('Sync to provided target (defaults to sync.target config value)')],
];
} }
static lockFile(filePath) { static lockFile(filePath) {
@@ -66,13 +62,16 @@ class Command extends BaseCommand {
const syncTarget = reg.syncTarget(this.syncTargetId_); const syncTarget = reg.syncTarget(this.syncTargetId_);
const syncTargetMd = SyncTargetRegistry.idToMetadata(this.syncTargetId_); const syncTargetMd = SyncTargetRegistry.idToMetadata(this.syncTargetId_);
if (this.syncTargetId_ === 3 || this.syncTargetId_ === 4) { // OneDrive if (this.syncTargetId_ === 3 || this.syncTargetId_ === 4) {
// OneDrive
this.oneDriveApiUtils_ = new OneDriveApiNodeUtils(syncTarget.api()); this.oneDriveApiUtils_ = new OneDriveApiNodeUtils(syncTarget.api());
const auth = await this.oneDriveApiUtils_.oauthDance({ const auth = await this.oneDriveApiUtils_.oauthDance({
log: (...s) => { return this.stdout(...s); } log: (...s) => {
return this.stdout(...s);
},
}); });
this.oneDriveApiUtils_ = null; this.oneDriveApiUtils_ = null;
Setting.setValue('sync.' + this.syncTargetId_ + '.auth', auth ? JSON.stringify(auth) : null); Setting.setValue('sync.' + this.syncTargetId_ + '.auth', auth ? JSON.stringify(auth) : null);
if (!auth) { if (!auth) {
this.stdout(_('Authentication was not completed (did not receive an authentication token).')); this.stdout(_('Authentication was not completed (did not receive an authentication token).'));
@@ -80,7 +79,8 @@ class Command extends BaseCommand {
} }
return true; return true;
} else if (syncTargetMd.name === 'dropbox') { // Dropbox } else if (syncTargetMd.name === 'dropbox') {
// Dropbox
const api = await syncTarget.api(); const api = await syncTarget.api();
const loginUrl = api.loginUrl(); const loginUrl = api.loginUrl();
this.stdout(_('To allow Joplin to synchronise with Dropbox, please follow the steps below:')); this.stdout(_('To allow Joplin to synchronise with Dropbox, please follow the steps below:'));
@@ -118,7 +118,7 @@ class Command extends BaseCommand {
// Lock is unique per profile/database // Lock is unique per profile/database
const lockFilePath = require('os').tmpdir() + '/synclock_' + md5(escape(Setting.value('profileDir'))); // https://github.com/pvorb/node-md5/issues/41 const lockFilePath = require('os').tmpdir() + '/synclock_' + md5(escape(Setting.value('profileDir'))); // https://github.com/pvorb/node-md5/issues/41
if (!await fs.pathExists(lockFilePath)) await fs.writeFile(lockFilePath, 'synclock'); if (!(await fs.pathExists(lockFilePath))) await fs.writeFile(lockFilePath, 'synclock');
try { try {
if (await Command.isLocked(lockFilePath)) throw new Error(_('Synchronisation is already in progress.')); if (await Command.isLocked(lockFilePath)) throw new Error(_('Synchronisation is already in progress.'));
@@ -147,22 +147,26 @@ class Command extends BaseCommand {
const syncTarget = reg.syncTarget(this.syncTargetId_); const syncTarget = reg.syncTarget(this.syncTargetId_);
if (!await syncTarget.isAuthenticated()) { if (!(await syncTarget.isAuthenticated())) {
app().gui().showConsole(); app()
app().gui().maximizeConsole(); .gui()
.showConsole();
app()
.gui()
.maximizeConsole();
const authDone = await this.doAuth(); const authDone = await this.doAuth();
if (!authDone) return cleanUp(); if (!authDone) return cleanUp();
} }
const sync = await syncTarget.synchronizer(); const sync = await syncTarget.synchronizer();
let options = { let options = {
onProgress: (report) => { onProgress: report => {
let lines = Synchronizer.reportToLines(report); let lines = Synchronizer.reportToLines(report);
if (lines.length) cliUtils.redraw(lines.join(' ')); if (lines.length) cliUtils.redraw(lines.join(' '));
}, },
onMessage: (msg) => { onMessage: msg => {
cliUtils.redrawDone(); cliUtils.redrawDone();
this.stdout(msg); this.stdout(msg);
}, },
@@ -237,7 +241,6 @@ class Command extends BaseCommand {
cancellable() { cancellable() {
return true; return true;
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -6,7 +6,6 @@ const BaseModel = require('lib/BaseModel.js');
const { time } = require('lib/time-utils.js'); const { time } = require('lib/time-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'tag <tag-command> [tag] [note]'; return 'tag <tag-command> [tag] [note]';
} }
@@ -16,9 +15,7 @@ class Command extends BaseCommand {
} }
options() { options() {
return [ return [['-l, --long', _('Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, TODO_CHECKED (for to-dos), TITLE')]];
['-l, --long', _('Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, TODO_CHECKED (for to-dos), TITLE')],
];
} }
async action(args) { async action(args) {
@@ -50,7 +47,7 @@ class Command extends BaseCommand {
} else if (command == 'list') { } else if (command == 'list') {
if (tag) { if (tag) {
let notes = await Tag.notes(tag.id); let notes = await Tag.notes(tag.id);
notes.map((note) => { notes.map(note => {
let line = ''; let line = '';
if (options.long) { if (options.long) {
line += BaseModel.shortId(note.id); line += BaseModel.shortId(note.id);
@@ -61,7 +58,7 @@ class Command extends BaseCommand {
if (note.is_todo) { if (note.is_todo) {
line += '['; line += '[';
if (note.todo_completed) { if (note.todo_completed) {
line += 'X'; line += 'X';
} else { } else {
line += ' '; line += ' ';
} }
@@ -74,13 +71,14 @@ class Command extends BaseCommand {
}); });
} else { } else {
let tags = await Tag.all(); let tags = await Tag.all();
tags.map((tag) => { this.stdout(tag.title); }); tags.map(tag => {
this.stdout(tag.title);
});
} }
} else { } else {
throw new Error(_('Invalid command: "%s"', command)); throw new Error(_('Invalid command: "%s"', command));
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,12 +2,10 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js'); const Note = require('lib/models/Note.js');
const { time } = require('lib/time-utils.js'); const { time } = require('lib/time-utils.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'todo <todo-command> <note-pattern>'; return 'todo <todo-command> <note-pattern>';
} }
@@ -39,12 +37,11 @@ class Command extends BaseCommand {
} }
} else if (action == 'clear') { } else if (action == 'clear') {
toSave.is_todo = 0; toSave.is_todo = 0;
} }
await Note.save(toSave); await Note.save(toSave);
} }
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -1,15 +1,9 @@
const { BaseCommand } = require('./base-command.js'); const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
const Note = require('lib/models/Note.js');
const { time } = require('lib/time-utils.js');
const CommandDone = require('./command-done.js'); const CommandDone = require('./command-done.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'undone <note>'; return 'undone <note>';
} }
@@ -21,7 +15,6 @@ class Command extends BaseCommand {
async action(args) { async action(args) {
await CommandDone.handleAction(this, args, false); await CommandDone.handleAction(this, args, false);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -2,10 +2,8 @@ const { BaseCommand } = require('./base-command.js');
const { app } = require('./app.js'); const { app } = require('./app.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const BaseModel = require('lib/BaseModel.js'); const BaseModel = require('lib/BaseModel.js');
const Folder = require('lib/models/Folder.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'use <notebook>'; return 'use <notebook>';
} }
@@ -14,10 +12,6 @@ class Command extends BaseCommand {
return _('Switches to [notebook] - all further operations will happen within this notebook.'); return _('Switches to [notebook] - all further operations will happen within this notebook.');
} }
autocomplete() {
return { data: autocompleteFolders };
}
compatibleUis() { compatibleUis() {
return ['cli']; return ['cli'];
} }
@@ -27,7 +21,6 @@ class Command extends BaseCommand {
if (!folder) throw new Error(_('Cannot find "%s".', args['notebook'])); if (!folder) throw new Error(_('Cannot find "%s".', args['notebook']));
app().switchCurrentFolder(folder); app().switchCurrentFolder(folder);
} }
} }
module.exports = Command; module.exports = Command;

View File

@@ -3,7 +3,6 @@ const Setting = require('lib/models/Setting.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
class Command extends BaseCommand { class Command extends BaseCommand {
usage() { usage() {
return 'version'; return 'version';
} }
@@ -16,7 +15,6 @@ class Command extends BaseCommand {
const p = require('./package.json'); const p = require('./package.json');
this.stdout(_('%s %s (%s)', p.name, p.version, Setting.value('env'))); this.stdout(_('%s %s (%s)', p.name, p.version, Setting.value('env')));
} }
} }
module.exports = Command; module.exports = Command;

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,6 @@
const TextWidget = require('tkwidgets/TextWidget.js'); const TextWidget = require('tkwidgets/TextWidget.js');
class ConsoleWidget extends TextWidget { class ConsoleWidget extends TextWidget {
constructor() { constructor() {
super(); super();
this.lines_ = []; this.lines_ = [];
@@ -16,7 +15,7 @@ class ConsoleWidget extends TextWidget {
} }
get lastLine() { get lastLine() {
return this.lines_.length ? this.lines_[this.lines_.length-1] : ''; return this.lines_.length ? this.lines_[this.lines_.length - 1] : '';
} }
addLine(line) { addLine(line) {
@@ -40,13 +39,12 @@ class ConsoleWidget extends TextWidget {
if (this.lines_.length > this.maxLines_) { if (this.lines_.length > this.maxLines_) {
this.lines_.splice(0, this.lines_.length - this.maxLines_); this.lines_.splice(0, this.lines_.length - this.maxLines_);
} }
this.text = this.lines_.join("\n"); this.text = this.lines_.join('\n');
this.updateText_ = false; this.updateText_ = false;
} }
super.render(); super.render();
} }
} }
module.exports = ConsoleWidget; module.exports = ConsoleWidget;

View File

@@ -5,7 +5,6 @@ const ListWidget = require('tkwidgets/ListWidget.js');
const _ = require('lib/locale.js')._; const _ = require('lib/locale.js')._;
class FolderListWidget extends ListWidget { class FolderListWidget extends ListWidget {
constructor() { constructor() {
super(); super();
@@ -20,7 +19,7 @@ class FolderListWidget extends ListWidget {
this.updateItems_ = false; this.updateItems_ = false;
this.trimItemTitle = false; this.trimItemTitle = false;
this.itemRenderer = (item) => { this.itemRenderer = item => {
let output = []; let output = [];
if (item === '-') { if (item === '-') {
output.push('-'.repeat(this.innerWidth)); output.push('-'.repeat(this.innerWidth));
@@ -32,7 +31,7 @@ class FolderListWidget extends ListWidget {
output.push(_('Search:')); output.push(_('Search:'));
output.push(item.title); output.push(item.title);
} }
return output.join(' '); return output.join(' ');
}; };
} }
@@ -45,7 +44,6 @@ class FolderListWidget extends ListWidget {
output++; output++;
folderId = folder.parent_id; folderId = folder.parent_id;
} }
throw new Error('unreachable');
} }
get selectedFolderId() { get selectedFolderId() {
@@ -54,7 +52,7 @@ class FolderListWidget extends ListWidget {
set selectedFolderId(v) { set selectedFolderId(v) {
this.selectedFolderId_ = v; this.selectedFolderId_ = v;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -64,7 +62,7 @@ class FolderListWidget extends ListWidget {
set selectedSearchId(v) { set selectedSearchId(v) {
this.selectedSearchId_ = v; this.selectedSearchId_ = v;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -74,7 +72,7 @@ class FolderListWidget extends ListWidget {
set selectedTagId(v) { set selectedTagId(v) {
this.selectedTagId_ = v; this.selectedTagId_ = v;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -84,7 +82,7 @@ class FolderListWidget extends ListWidget {
set notesParentType(v) { set notesParentType(v) {
this.notesParentType_ = v; this.notesParentType_ = v;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -95,7 +93,7 @@ class FolderListWidget extends ListWidget {
set searches(v) { set searches(v) {
this.searches_ = v; this.searches_ = v;
this.updateItems_ = true; this.updateItems_ = true;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -106,7 +104,7 @@ class FolderListWidget extends ListWidget {
set tags(v) { set tags(v) {
this.tags_ = v; this.tags_ = v;
this.updateItems_ = true; this.updateItems_ = true;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -117,7 +115,7 @@ class FolderListWidget extends ListWidget {
set folders(v) { set folders(v) {
this.folders_ = v; this.folders_ = v;
this.updateItems_ = true; this.updateItems_ = true;
this.updateIndexFromSelectedItemId() this.updateIndexFromSelectedItemId();
this.invalidate(); this.invalidate();
} }
@@ -128,7 +126,7 @@ class FolderListWidget extends ListWidget {
} }
return false; return false;
} }
render() { render() {
if (this.updateItems_) { if (this.updateItems_) {
this.logger().debug('Rebuilding items...', this.notesParentType, this.selectedJoplinItemId, this.selectedSearchId); this.logger().debug('Rebuilding items...', this.notesParentType, this.selectedJoplinItemId, this.selectedSearchId);
@@ -136,7 +134,7 @@ class FolderListWidget extends ListWidget {
const previousParentType = this.notesParentType; const previousParentType = this.notesParentType;
let newItems = []; let newItems = [];
const orderFolders = (parentId) => { const orderFolders = parentId => {
for (let i = 0; i < this.folders.length; i++) { for (let i = 0; i < this.folders.length; i++) {
const f = this.folders[i]; const f = this.folders[i];
const folderParentId = f.parent_id ? f.parent_id : ''; const folderParentId = f.parent_id ? f.parent_id : '';
@@ -145,7 +143,7 @@ class FolderListWidget extends ListWidget {
if (this.folderHasChildren_(this.folders, f.id)) orderFolders(f.id); if (this.folderHasChildren_(this.folders, f.id)) orderFolders(f.id);
} }
} }
} };
orderFolders(''); orderFolders('');
@@ -162,7 +160,7 @@ class FolderListWidget extends ListWidget {
this.items = newItems; this.items = newItems;
this.notesParentType = previousParentType; this.notesParentType = previousParentType;
this.updateIndexFromSelectedItemId(wasSelectedItemId) this.updateIndexFromSelectedItemId(wasSelectedItemId);
this.updateItems_ = false; this.updateItems_ = false;
} }
@@ -188,7 +186,6 @@ class FolderListWidget extends ListWidget {
const index = this.itemIndexByKey('id', itemId); const index = this.itemIndexByKey('id', itemId);
this.currentIndex = index >= 0 ? index : 0; this.currentIndex = index >= 0 ? index : 0;
} }
} }
module.exports = FolderListWidget; module.exports = FolderListWidget;

View File

@@ -2,14 +2,13 @@ const Note = require('lib/models/Note.js');
const ListWidget = require('tkwidgets/ListWidget.js'); const ListWidget = require('tkwidgets/ListWidget.js');
class NoteListWidget extends ListWidget { class NoteListWidget extends ListWidget {
constructor() { constructor() {
super(); super();
this.selectedNoteId_ = 0; this.selectedNoteId_ = 0;
this.updateIndexFromSelectedNoteId_ = false; this.updateIndexFromSelectedNoteId_ = false;
this.itemRenderer = (note) => { this.itemRenderer = note => {
let label = Note.displayTitle(note); // + ' ' + note.id; let label = Note.displayTitle(note); // + ' ' + note.id;
if (note.is_todo) { if (note.is_todo) {
label = '[' + (note.todo_completed ? 'X' : ' ') + '] ' + label; label = '[' + (note.todo_completed ? 'X' : ' ') + '] ' + label;
@@ -32,7 +31,6 @@ class NoteListWidget extends ListWidget {
super.render(); super.render();
} }
} }
module.exports = NoteListWidget; module.exports = NoteListWidget;

View File

@@ -2,7 +2,6 @@ const Note = require('lib/models/Note.js');
const TextWidget = require('tkwidgets/TextWidget.js'); const TextWidget = require('tkwidgets/TextWidget.js');
class NoteMetadataWidget extends TextWidget { class NoteMetadataWidget extends TextWidget {
constructor() { constructor() {
super(); super();
this.noteId_ = 0; this.noteId_ = 0;
@@ -30,7 +29,6 @@ class NoteMetadataWidget extends TextWidget {
this.text = this.note_ ? await Note.minimalSerializeForDisplay(this.note_) : ''; this.text = this.note_ ? await Note.minimalSerializeForDisplay(this.note_) : '';
} }
} }
} }
module.exports = NoteMetadataWidget; module.exports = NoteMetadataWidget;

View File

@@ -3,7 +3,6 @@ const TextWidget = require('tkwidgets/TextWidget.js');
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
class NoteWidget extends TextWidget { class NoteWidget extends TextWidget {
constructor() { constructor() {
super(); super();
this.noteId_ = 0; this.noteId_ = 0;
@@ -44,11 +43,11 @@ class NoteWidget extends TextWidget {
} else if (this.noteId_) { } else if (this.noteId_) {
this.doAsync('loadNote', async () => { this.doAsync('loadNote', async () => {
this.note_ = await Note.load(this.noteId_); this.note_ = await Note.load(this.noteId_);
if (this.note_ && this.note_.encryption_applied) { if (this.note_ && this.note_.encryption_applied) {
this.text = _('One or more items are currently encrypted and you may need to supply a master password. To do so please type `e2ee decrypt`. If you have already supplied the password, the encrypted items are being decrypted in the background and will be available soon.'); this.text = _('One or more items are currently encrypted and you may need to supply a master password. To do so please type `e2ee decrypt`. If you have already supplied the password, the encrypted items are being decrypted in the background and will be available soon.');
} else { } else {
this.text = this.note_ ? this.note_.title + "\n\n" + this.note_.body : ''; this.text = this.note_ ? this.note_.title + '\n\n' + this.note_.body : '';
} }
if (this.lastLoadedNoteId_ !== this.noteId_) this.scrollTop = 0; if (this.lastLoadedNoteId_ !== this.noteId_) this.scrollTop = 0;
@@ -59,7 +58,6 @@ class NoteWidget extends TextWidget {
this.scrollTop = 0; this.scrollTop = 0;
} }
} }
} }
module.exports = NoteWidget; module.exports = NoteWidget;

View File

@@ -5,7 +5,6 @@ const stripAnsi = require('strip-ansi');
const { handleAutocompletion } = require('../autocompletion.js'); const { handleAutocompletion } = require('../autocompletion.js');
class StatusBarWidget extends BaseWidget { class StatusBarWidget extends BaseWidget {
constructor() { constructor() {
super(); super();
@@ -75,7 +74,7 @@ class StatusBarWidget extends BaseWidget {
super.render(); super.render();
const doSaveCursor = !this.promptActive; const doSaveCursor = !this.promptActive;
if (doSaveCursor) this.term.saveCursor(); if (doSaveCursor) this.term.saveCursor();
this.innerClear(); this.innerClear();
@@ -87,14 +86,13 @@ class StatusBarWidget extends BaseWidget {
//const textStyle = this.promptActive ? (s) => s : chalk.bgBlueBright.white; //const textStyle = this.promptActive ? (s) => s : chalk.bgBlueBright.white;
//const textStyle = (s) => s; //const textStyle = (s) => s;
const textStyle = this.promptActive ? (s) => s : chalk.gray; const textStyle = this.promptActive ? s => s : chalk.gray;
this.term.drawHLine(this.absoluteInnerX, this.absoluteInnerY, this.innerWidth, textStyle(' ')); this.term.drawHLine(this.absoluteInnerX, this.absoluteInnerY, this.innerWidth, textStyle(' '));
this.term.moveTo(this.absoluteInnerX, this.absoluteInnerY); this.term.moveTo(this.absoluteInnerX, this.absoluteInnerY);
if (this.promptActive) { if (this.promptActive) {
this.term.write(textStyle(this.promptState_.promptString)); this.term.write(textStyle(this.promptState_.promptString));
if (this.inputEventEmitter_) { if (this.inputEventEmitter_) {
@@ -113,8 +111,8 @@ class StatusBarWidget extends BaseWidget {
history: this.history, history: this.history,
default: this.promptState_.initialText, default: this.promptState_.initialText,
autoComplete: handleAutocompletion, autoComplete: handleAutocompletion,
autoCompleteHint : true, autoCompleteHint: true,
autoCompleteMenu : true, autoCompleteMenu: true,
}; };
if ('cursorPosition' in this.promptState_) options.cursorPosition = this.promptState_.cursorPosition; if ('cursorPosition' in this.promptState_) options.cursorPosition = this.promptState_.cursorPosition;
@@ -153,19 +151,15 @@ class StatusBarWidget extends BaseWidget {
// Only callback once everything has been cleaned up and reset // Only callback once everything has been cleaned up and reset
resolveFn(resolveResult); resolveFn(resolveResult);
}); });
} else { } else {
for (let i = 0; i < this.items_.length; i++) { for (let i = 0; i < this.items_.length; i++) {
const s = this.items_[i].substr(0, this.innerWidth - 1); const s = this.items_[i].substr(0, this.innerWidth - 1);
this.term.write(textStyle(s)); this.term.write(textStyle(s));
} }
} }
if (doSaveCursor) this.term.restoreCursor(); if (doSaveCursor) this.term.restoreCursor();
} }
} }
module.exports = StatusBarWidget; module.exports = StatusBarWidget;

View File

@@ -1,10 +1,7 @@
const fs = require('fs-extra');
const { wrap } = require('lib/string-utils.js'); const { wrap } = require('lib/string-utils.js');
const Setting = require('lib/models/Setting.js'); const Setting = require('lib/models/Setting.js');
const { fileExtension, basename, dirname } = require('lib/path-utils.js'); const { _ } = require('lib/locale.js');
const { _, setLocale, languageCode } = require('lib/locale.js');
const rootDir = dirname(dirname(__dirname));
const MAX_WIDTH = 78; const MAX_WIDTH = 78;
const INDENT = ' '; const INDENT = ' ';
@@ -16,14 +13,14 @@ function renderTwoColumnData(options, baseIndent, width) {
let option = options[i]; let option = options[i];
const flag = option[0]; const flag = option[0];
const indent = baseIndent + INDENT + ' '.repeat(optionColWidth + 2); const indent = baseIndent + INDENT + ' '.repeat(optionColWidth + 2);
let r = wrap(option[1], indent, width); let r = wrap(option[1], indent, width);
r = r.substr(flag.length + (baseIndent + INDENT).length); r = r.substr(flag.length + (baseIndent + INDENT).length);
r = baseIndent + INDENT + flag + r; r = baseIndent + INDENT + flag + r;
output.push(r); output.push(r);
} }
return output.join("\n"); return output.join('\n');
} }
function renderCommandHelp(cmd, width = null) { function renderCommandHelp(cmd, width = null) {
@@ -44,7 +41,7 @@ function renderCommandHelp(cmd, width = null) {
} }
if (cmd.name() === 'config') { if (cmd.name() === 'config') {
const renderMetadata = (md) => { const renderMetadata = md => {
let desc = []; let desc = [];
if (md.label) { if (md.label) {
@@ -67,13 +64,13 @@ function renderCommandHelp(cmd, width = null) {
} else if (md.type === Setting.TYPE_INT) { } else if (md.type === Setting.TYPE_INT) {
defaultString = (md.value ? md.value : 0).toString(); defaultString = (md.value ? md.value : 0).toString();
} else if (md.type === Setting.TYPE_BOOL) { } else if (md.type === Setting.TYPE_BOOL) {
defaultString = (md.value === true ? 'true' : 'false'); defaultString = md.value === true ? 'true' : 'false';
} }
} }
if (defaultString !== null) desc.push(_('Default: %s', defaultString)); if (defaultString !== null) desc.push(_('Default: %s', defaultString));
return [md.key, desc.join("\n")]; return [md.key, desc.join('\n')];
}; };
output.push(''); output.push('');
@@ -83,7 +80,7 @@ function renderCommandHelp(cmd, width = null) {
let keysValues = []; let keysValues = [];
const keys = Setting.keys(true, 'cli'); const keys = Setting.keys(true, 'cli');
for (let i = 0; i < keys.length; i++) { for (let i = 0; i < keys.length; i++) {
if (keysValues.length) keysValues.push(['','']); if (keysValues.length) keysValues.push(['', '']);
const md = Setting.settingMetadata(keys[i]); const md = Setting.settingMetadata(keys[i]);
if (!md.label) continue; if (!md.label) continue;
keysValues.push(renderMetadata(md)); keysValues.push(renderMetadata(md));
@@ -91,8 +88,8 @@ function renderCommandHelp(cmd, width = null) {
output.push(renderTwoColumnData(keysValues, baseIndent, width)); output.push(renderTwoColumnData(keysValues, baseIndent, width));
} }
return output.join("\n"); return output.join('\n');
} }
function getOptionColWidth(options) { function getOptionColWidth(options) {
@@ -104,4 +101,4 @@ function getOptionColWidth(options) {
return output; return output;
} }
module.exports = { renderCommandHelp }; module.exports = { renderCommandHelp };

View File

@@ -53,25 +53,25 @@ shimInit();
const application = app(); const application = app();
if (process.platform === "win32") { if (process.platform === 'win32') {
var rl = require("readline").createInterface({ var rl = require('readline').createInterface({
input: process.stdin, input: process.stdin,
output: process.stdout output: process.stdout,
}); });
rl.on("SIGINT", function () { rl.on('SIGINT', function() {
process.emit("SIGINT"); process.emit('SIGINT');
}); });
} }
process.stdout.on('error', function( err ) { process.stdout.on('error', function(err) {
// https://stackoverflow.com/questions/12329816/error-write-epipe-when-piping-node-output-to-head#15884508 // https://stackoverflow.com/questions/12329816/error-write-epipe-when-piping-node-output-to-head#15884508
if (err.code == "EPIPE") { if (err.code == 'EPIPE') {
process.exit(0); process.exit(0);
} }
}); });
application.start(process.argv).catch((error) => { application.start(process.argv).catch(error => {
if (error.code == 'flagError') { if (error.code == 'flagError') {
console.error(error.message); console.error(error.message);
console.error(_('Type `joplin help` for usage information.')); console.error(_('Type `joplin help` for usage information.'));
@@ -81,4 +81,4 @@ application.start(process.argv).catch((error) => {
} }
process.exit(1); process.exit(1);
}); });

View File

@@ -1,13 +1,11 @@
const { _ } = require('lib/locale.js'); const { _ } = require('lib/locale.js');
const { netUtils } = require('lib/net-utils.js'); const { netUtils } = require('lib/net-utils.js');
const http = require("http"); const http = require('http');
const urlParser = require("url"); const urlParser = require('url');
const FormData = require('form-data');
const enableServerDestroy = require('server-destroy'); const enableServerDestroy = require('server-destroy');
class OneDriveApiNodeUtils { class OneDriveApiNodeUtils {
constructor(api) { constructor(api) {
this.api_ = api; this.api_ = api;
this.oauthServer_ = null; this.oauthServer_ = null;
@@ -48,7 +46,7 @@ class OneDriveApiNodeUtils {
let authCodeUrl = this.api().authCodeUrl('http://localhost:' + port); let authCodeUrl = this.api().authCodeUrl('http://localhost:' + port);
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.oauthServer_ = http.createServer(); this.oauthServer_ = http.createServer();
let errorMessage = null; let errorMessage = null;
@@ -56,7 +54,7 @@ class OneDriveApiNodeUtils {
const url = urlParser.parse(request.url, true); const url = urlParser.parse(request.url, true);
if (url.pathname === '/auth') { if (url.pathname === '/auth') {
response.writeHead(302, { 'Location': authCodeUrl }); response.writeHead(302, { Location: authCodeUrl });
response.end(); response.end();
return; return;
} }
@@ -64,10 +62,10 @@ class OneDriveApiNodeUtils {
const query = url.query; const query = url.query;
const writeResponse = (code, message) => { const writeResponse = (code, message) => {
response.writeHead(code, {"Content-Type": "text/html"}); response.writeHead(code, { 'Content-Type': 'text/html' });
response.write(this.makePage(message)); response.write(this.makePage(message));
response.end(); response.end();
} };
// After the response has been received, don't destroy the server right // After the response has been received, don't destroy the server right
// away or the browser might display a connection reset error (even // away or the browser might display a connection reset error (even
@@ -77,21 +75,24 @@ class OneDriveApiNodeUtils {
this.oauthServer_.destroy(); this.oauthServer_.destroy();
this.oauthServer_ = null; this.oauthServer_ = null;
}, 1000); }, 1000);
} };
if (!query.code) return writeResponse(400, '"code" query parameter is missing'); if (!query.code) return writeResponse(400, '"code" query parameter is missing');
this.api().execTokenRequest(query.code, 'http://localhost:' + port.toString()).then(() => { this.api()
writeResponse(200, _('The application has been authorised - you may now close this browser tab.')); .execTokenRequest(query.code, 'http://localhost:' + port.toString())
targetConsole.log(''); .then(() => {
targetConsole.log(_('The application has been successfully authorised.')); writeResponse(200, _('The application has been authorised - you may now close this browser tab.'));
waitAndDestroy(); targetConsole.log('');
}).catch((error) => { targetConsole.log(_('The application has been successfully authorised.'));
writeResponse(400, error.message); waitAndDestroy();
targetConsole.log(''); })
targetConsole.log(error.message); .catch(error => {
waitAndDestroy(); writeResponse(400, error.message);
}); targetConsole.log('');
targetConsole.log(error.message);
waitAndDestroy();
});
}); });
this.oauthServer_.on('close', () => { this.oauthServer_.on('close', () => {
@@ -116,7 +117,6 @@ class OneDriveApiNodeUtils {
targetConsole.log('http://127.0.0.1:' + port + '/auth'); targetConsole.log('http://127.0.0.1:' + port + '/auth');
}); });
} }
} }
module.exports = { OneDriveApiNodeUtils }; module.exports = { OneDriveApiNodeUtils };

View File

@@ -385,6 +385,23 @@ msgstr "حذف الملاحظة؟"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "يبحث عن الـ <pattern> (نمط) المعطى في كل الملاحظات." msgstr "يبحث عن الـ <pattern> (نمط) المعطى في كل الملاحظات."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -517,6 +534,10 @@ msgstr "أكتب `joplin help` لمعلومات الاستخدام."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "خطأ فادح:" msgstr "خطأ فادح:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "تم التصريح للتطبيق - يمكنك الآن إغلاق تبويب المستعرض هذا." msgstr "تم التصريح للتطبيق - يمكنك الآن إغلاق تبويب المستعرض هذا."
@@ -611,6 +632,27 @@ msgstr "خيارات التشفير"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "خيارات Web clipper" msgstr "خيارات Web clipper"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "إدراج التاريخ والوقت"
#, fuzzy
msgid "Open template directory"
msgstr "دليل تصدير بيانات Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -627,6 +669,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "البحث جارٍ عن تحديثات..." msgstr "البحث جارٍ عن تحديثات..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "استيراد" msgstr "استيراد"
@@ -670,12 +715,18 @@ msgstr "مائل"
msgid "Link" msgid "Link"
msgstr "رابط" msgstr "رابط"
msgid "Code"
msgstr "رمز"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "إدراج التاريخ والوقت" msgstr "إدراج التاريخ والوقت"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "التحرير في محرر خارجي" msgstr "التحرير في محرر خارجي"
msgid "Tags"
msgstr "وسوم"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "البحث في كل الملاحظات" msgstr "البحث في كل الملاحظات"
@@ -703,6 +754,10 @@ msgstr "م&ساعدة"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "موقع الويب و التوثيق" msgstr "موقع الويب و التوثيق"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin نسخة %s"
msgid "Make a donation" msgid "Make a donation"
msgstr "تبرَّع" msgstr "تبرَّع"
@@ -901,8 +956,8 @@ msgstr ""
"فيما بعد عبر المزامنة." "فيما بعد عبر المزامنة."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"يرجى الرجوع إلى التوثيق للمزيد من المعلومات عن التشفير من الطرف للطرف (E2EE) " "يرجى الرجوع إلى التوثيق للمزيد من المعلومات عن التشفير من الطرف للطرف (E2EE) "
"و طرق تفعيله." "و طرق تفعيله."
@@ -945,6 +1000,9 @@ msgstr "إعادة تسمية الوسم:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "ضبط منبّه:" msgstr "ضبط منبّه:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "تخطيط" msgstr "تخطيط"
@@ -982,6 +1040,9 @@ msgstr "عنوان URL"
msgid "Note History" msgid "Note History"
msgstr "قائمة ملاحظات" msgstr "قائمة ملاحظات"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1053,9 +1114,6 @@ msgstr "إدراج ارتباط تشعبي"
msgid "Attach file" msgid "Attach file"
msgstr "إرفاق ملف" msgstr "إرفاق ملف"
msgid "Tags"
msgstr "وسوم"
msgid "Set alarm" msgid "Set alarm"
msgstr "ضبط منبّه" msgstr "ضبط منبّه"
@@ -1066,9 +1124,6 @@ msgstr "في: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "ارتباط تشعبي" msgstr "ارتباط تشعبي"
msgid "Code"
msgstr "رمز"
msgid "Numbered List" msgid "Numbered List"
msgstr "قائمة مرقّمة" msgstr "قائمة مرقّمة"
@@ -1147,17 +1202,6 @@ msgstr "حذف"
msgid "Rename" msgid "Rename"
msgstr "إعادة تسمية" msgstr "إعادة تسمية"
msgid "Notebooks"
msgstr "دفاتر ملاحظات"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "فك تشفير العناصر: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "جلب الموارد: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "فضلاً اختر أين سيتم تصدير حالة المزامنة" msgstr "فضلاً اختر أين سيتم تصدير حالة المزامنة"
@@ -1433,6 +1477,12 @@ msgstr "فاتحة"
msgid "Dark" msgid "Dark"
msgstr "غامقة" msgstr "غامقة"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "قوائم المهام غير المكتملة في الأعلى" msgstr "قوائم المهام غير المكتملة في الأعلى"
@@ -1501,6 +1551,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "إظهار أيقونة لوحة النظام" msgstr "إظهار أيقونة لوحة النظام"
@@ -1569,9 +1622,6 @@ msgstr ""
"أمر محرر النصوص (قد يتضمن معامِلات) الذي سيستخدم لفتح ملاحظة. إذا لم يجر " "أمر محرر النصوص (قد يتضمن معامِلات) الذي سيستخدم لفتح ملاحظة. إذا لم يجر "
"التزويد بأي محرر فسيحاول التطبيق اكتشاف المحرِّر التلقائي آلياً." "التزويد بأي محرر فسيحاول التطبيق اكتشاف المحرِّر التلقائي آلياً."
msgid "Show advanced options"
msgstr "إظهار خيارات متقدمة"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "شهادات TLS خاصة" msgstr "شهادات TLS خاصة"
@@ -1589,6 +1639,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "تجاهل أخطاء شهادات TLS" msgstr "تجاهل أخطاء شهادات TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "تفعيل التشفير" msgstr "تفعيل التشفير"
@@ -1744,24 +1799,20 @@ msgstr "الإذن باستخدام الكاميرا"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "إذنك باستخدام كاميرا الجوال مطلوب." msgstr "إذنك باستخدام كاميرا الجوال مطلوب."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "لا يوجد دفتر ملاحظات نشط."
#, fuzzy
msgid "Create a notebook"
msgstr "ينشئ دفتر ملاحظات جديد."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "لا توجد ملاحظات حالياً. أنشئ واحدة بالضغط على زر (+)." msgstr "لا توجد ملاحظات حالياً. أنشئ واحدة بالضغط على زر (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "حذف هذه الملاحظات؟" msgstr "حذف هذه الملاحظات؟"
msgid "Log"
msgstr "السجل"
msgid "Export Debug Report"
msgstr "تصدير تقرير إصلاح الأخطاء"
msgid "Encryption Config"
msgstr "ضبط التشفير"
msgid "Configuration"
msgstr "الضبط"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "النقل إلى دفتر ملاحظات..." msgstr "النقل إلى دفتر ملاحظات..."
@@ -1784,8 +1835,35 @@ msgstr "إختر التاريخ"
msgid "Confirm" msgid "Confirm"
msgstr "تأكيد" msgstr "تأكيد"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "إلغاء المزامنة" msgid "Notebook: %s"
msgstr "دفاتر ملاحظات"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "لا يمكن تعديل العناصر المشفَّرة"
#, fuzzy
msgid "New Notebook"
msgstr "دفتر ملاحظات جديد"
msgid "Configuration"
msgstr "الضبط"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "فك تشفير العناصر: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "جلب الموارد: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "ملاحظة"
msgid "Notebooks"
msgstr "دفاتر ملاحظات"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "التحقق جارٍ... فضلاً انتظر." msgstr "التحقق جارٍ... فضلاً انتظر."
@@ -1825,6 +1903,50 @@ msgstr "وسوم جديدة:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "أكتب وسوماً جديدة أو اخترها من القائمة" msgstr "أكتب وسوماً جديدة أو اخترها من القائمة"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "الضبط"
msgid "Encryption Config"
msgstr "ضبط التشفير"
#, fuzzy
msgid "Tools"
msgstr "&أدوات"
#, fuzzy
msgid "Sync Status"
msgstr "الحالة"
msgid "Log"
msgstr "السجل"
#, fuzzy
msgid "Creating report..."
msgstr "إنشاء %s جديد ..."
msgid "Export Debug Report"
msgstr "تصدير تقرير إصلاح الأخطاء"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "الضبط" msgstr "الضبط"
@@ -1889,6 +2011,10 @@ msgstr "لم يتم حفظ دفتر الملاحظات: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "تحرير دفتر الملاحظات" msgstr "تحرير دفتر الملاحظات"
#, fuzzy
msgid "Enter notebook title"
msgstr "عنوان دفتر الملاحظات:"
msgid "Show all" msgid "Show all"
msgstr "إظهار الكل" msgstr "إظهار الكل"
@@ -1912,10 +2038,32 @@ msgstr "لا يوجد عنصر بالمعرّف %s"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "تطبيق Joplin على الهاتف الجوال لا يدعم حالياً هذا النوع من الربط : %s" msgstr "تطبيق Joplin على الهاتف الجوال لا يدعم حالياً هذا النوع من الربط : %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "نوع صورة غير مدعوم: %s" msgstr "نوع صورة غير مدعوم: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "تم تحديثها: %d."
msgid "View on map"
msgstr "عرض على الخريطة"
msgid "Go to source URL"
msgstr "الذهاب إلى عنوان URL المصدر"
#, fuzzy
msgid "Attach..."
msgstr "بحث..."
#, fuzzy
msgid "Choose an option"
msgstr "إظهار خيارات متقدمة"
msgid "Take photo" msgid "Take photo"
msgstr "التقاط صورة" msgstr "التقاط صورة"
@@ -1934,23 +2082,19 @@ msgstr "تحويل إلى ملاحظة"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "تحويل إلى قائمة مهام" msgstr "تحويل إلى قائمة مهام"
msgid "Hide metadata" #, fuzzy
msgstr "إخفاء البيانات الوصفية" msgid "Properties"
msgstr "خصائص الملاحظة"
msgid "Show metadata" msgid "Add body"
msgstr "إظهار البيانات الوصفية" msgstr ""
msgid "View on map"
msgstr "عرض على الخريطة"
msgid "Go to source URL"
msgstr "الذهاب إلى عنوان URL المصدر"
msgid "Edit" msgid "Edit"
msgstr "تحرير" msgstr "تحرير"
msgid "Delete notebook" #, fuzzy
msgstr "حذف دفتر الملاحظات" msgid "Add title"
msgstr "العنوان"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "تسجيل الدخول عبر OneDrive" msgstr "تسجيل الدخول عبر OneDrive"
@@ -1958,18 +2102,35 @@ msgstr "تسجيل الدخول عبر OneDrive"
msgid "Search" msgid "Search"
msgstr "بحث" msgstr "بحث"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "الإذن باستخدام الكاميرا"
msgstr ""
"اضغط على زر (+) لتنشئ ملاحظة أو دفتر ملاحظات جديداً. اضغط على القائمة "
"الجانبية للوصول إلى دفاتر ملاحظاتك القائمة."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "ليس لديك دفاتر ملاحظات حالياً. أنشئ واحدة بالضغط على زر (+)." #~ msgstr "إلغاء المزامنة"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "مرحباً" #~ msgstr "إخفاء البيانات الوصفية"
#~ msgid "Show metadata"
#~ msgstr "إظهار البيانات الوصفية"
#~ msgid "Delete notebook"
#~ msgstr "حذف دفتر الملاحظات"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "اضغط على زر (+) لتنشئ ملاحظة أو دفتر ملاحظات جديداً. اضغط على القائمة "
#~ "الجانبية للوصول إلى دفاتر ملاحظاتك القائمة."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "ليس لديك دفاتر ملاحظات حالياً. أنشئ واحدة بالضغط على زر (+)."
#~ msgid "Welcome"
#~ msgstr "مرحباً"
#~ msgid "Some items cannot be decrypted." #~ msgid "Some items cannot be decrypted."
#~ msgstr "لا يمكن فك تشفير بعض العناصر." #~ msgstr "لا يمكن فك تشفير بعض العناصر."
@@ -1986,6 +2147,3 @@ msgstr "مرحباً"
#~ msgid "Remove?" #~ msgid "Remove?"
#~ msgstr "إزالة ؟" #~ msgstr "إزالة ؟"
#~ msgid "Joplin v%s"
#~ msgstr "Joplin نسخة %s"

2183
CliClient/locales/bg_BG.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,14 +1,17 @@
# Catalan Joplin Translation. # Catalan Joplin Translation.
# Copyright (C) 2018 Joan Montané # Copyright (C) 2019 Joan Montané, Josep Maria Planell
# This file is distributed under the same license as the Joplin-CLI package. # This file is distributed under the same license as the Joplin-CLI package.
# Joan Montané <jmontane@softcatala.org>, 2018. #
# Translators:
# Josep Maria Planell <planell.josep@gmail.com>, 2019
# Joan Montané <jmontane@softcatala.org>, 2019
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Joplin-CLI 1.0.0\n" "Project-Id-Version: Joplin-CLI 1.0.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"Last-Translator: jmontane, 2018\n" "Last-Translator: jmontane, 2019\n"
"Language-Team: jmontane@softcatala.org\n" "Language-Team: jmontane@softcatala.org\n"
"Language: ca\n" "Language: ca\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -65,7 +68,7 @@ msgstr "No es pot canviar l'element xifrat"
#, javascript-format #, javascript-format
msgid "Missing required argument: %s" msgid "Missing required argument: %s"
msgstr "Manca un argument requerit: 1%s" msgstr "Manca un argument requerit: %s"
#, javascript-format #, javascript-format
msgid "%s: %s" msgid "%s: %s"
@@ -287,7 +290,7 @@ msgstr "Creades: %d."
#, javascript-format #, javascript-format
msgid "Updated: %d." msgid "Updated: %d."
msgstr "Acualitzades: %d." msgstr "Actualitzades: %d."
#, javascript-format #, javascript-format
msgid "Skipped: %d." msgid "Skipped: %d."
@@ -394,6 +397,23 @@ msgstr "Voleu suprimir la nota?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Cerca el patró <pattern> en totes les notes." msgstr "Cerca el patró <pattern> en totes les notes."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -474,8 +494,9 @@ msgid ""
"`tag list` can be used to list all the tags (use -l for long option)." "`tag list` can be used to list all the tags (use -l for long option)."
msgstr "" msgstr ""
"<tag-command>pot ser «add», «remove» o «list» per a assignar o suprimir " "<tag-command>pot ser «add», «remove» o «list» per a assignar o suprimir "
"[tag] de la [nota], o per a llistar les notes associades amb [tag]. L'ordre " "l'[etiqueta] de la [nota], o per a llistar les notes associades amb "
"«tag list» es pot usar per a llistar totes les etiquetes." "l'[etiqueta]. L'ordre «tag list» es pot usar per a llistar totes les "
"etiquetes."
#, javascript-format #, javascript-format
msgid "Invalid command: \"%s\"" msgid "Invalid command: \"%s\""
@@ -534,6 +555,10 @@ msgstr "Escriviu «joplin help» per a obtenir informació d'ús."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Error fatal:" msgstr "Error fatal:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -635,6 +660,27 @@ msgstr "Opcions del xifratge"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Opcions del desa-retalls de webs" msgstr "Opcions del desa-retalls de webs"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Insereix la data i hora"
#, fuzzy
msgid "Open template directory"
msgstr "Directori d'exportació del Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -652,6 +698,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Comprova les actualitzacions..." msgstr "Comprova les actualitzacions..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importació" msgstr "Importació"
@@ -689,19 +738,25 @@ msgid "Select all"
msgstr "Seleccioneu una data" msgstr "Seleccioneu una data"
msgid "Bold" msgid "Bold"
msgstr "" msgstr "Negreta"
msgid "Italic" msgid "Italic"
msgstr "" msgstr "Cursiva"
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr "Codi"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr "Insereix la data i hora"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr "Edita en un editor extern"
msgid "Tags"
msgstr "Etiquetes"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Cerca a totes les notes" msgstr "Cerca a totes les notes"
@@ -735,6 +790,10 @@ msgstr "Ajuda"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Lloc web i documentació" msgstr "Lloc web i documentació"
#, fuzzy
msgid "Joplin Forum"
msgstr "Fitxer d'exportació del Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "Donatius" msgstr "Donatius"
@@ -857,7 +916,7 @@ msgid "Browse..."
msgstr "" msgstr ""
msgid "Apply" msgid "Apply"
msgstr "" msgstr "Aplica"
msgid "Submit" msgid "Submit"
msgstr "Tramet" msgstr "Tramet"
@@ -938,8 +997,8 @@ msgstr ""
"sincrontizació." "sincrontizació."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Per a més informació sobre el xifratge d'extrem a extrem (E2EE) i consells " "Per a més informació sobre el xifratge d'extrem a extrem (E2EE) i consells "
"sobre com activar-lo, llegiu la documentació:" "sobre com activar-lo, llegiu la documentació:"
@@ -983,6 +1042,9 @@ msgstr "Canvia el nom de l'etiqueta:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Estableix una alarma:" msgstr "Estableix una alarma:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Disposició" msgstr "Disposició"
@@ -1017,9 +1079,11 @@ msgstr ""
msgid "URL" msgid "URL"
msgstr "" msgstr ""
#, fuzzy
msgid "Note History" msgid "Note History"
msgstr "Blocs de notes" msgstr ""
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1047,9 +1111,9 @@ msgstr ""
msgid "Open..." msgid "Open..."
msgstr "Obre..." msgstr "Obre..."
#, fuzzy, javascript-format #, javascript-format
msgid "This file could not be opened: %s" msgid "This file could not be opened: %s"
msgstr "No s'ha pogut desar el bloc de notes: %s" msgstr "Aquest fitxer no s'ha pogut obrir: %s"
msgid "Save as..." msgid "Save as..."
msgstr "Anomena i desa..." msgstr "Anomena i desa..."
@@ -1058,7 +1122,7 @@ msgid "Copy path to clipboard"
msgstr "Copia el camí al porta-retalls" msgstr "Copia el camí al porta-retalls"
msgid "Copy Link Address" msgid "Copy Link Address"
msgstr "" msgstr "Copia l'adreça de l'enllaç"
msgid "This attachment is not downloaded or not decrypted yet." msgid "This attachment is not downloaded or not decrypted yet."
msgstr "" msgstr ""
@@ -1079,23 +1143,20 @@ msgid "Only one note can be printed or exported to PDF at a time."
msgstr "" msgstr ""
msgid "strong text" msgid "strong text"
msgstr "" msgstr "text en negreta"
msgid "emphasized text" msgid "emphasized text"
msgstr "" msgstr "text amb èmfasi"
msgid "List item" msgid "List item"
msgstr "" msgstr "Element de llista"
msgid "Insert Hyperlink" msgid "Insert Hyperlink"
msgstr "" msgstr "insereix un enllaç"
msgid "Attach file" msgid "Attach file"
msgstr "Adjunta un fitxer" msgstr "Adjunta un fitxer"
msgid "Tags"
msgstr "Etiquetes"
msgid "Set alarm" msgid "Set alarm"
msgstr "Estableix una alarma" msgstr "Estableix una alarma"
@@ -1104,32 +1165,28 @@ msgid "In: %s"
msgstr "A: %s" msgstr "A: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr "Enllaç"
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr "Llista numerada"
msgid "Bulleted List" msgid "Bulleted List"
msgstr "" msgstr "Llista de pics"
msgid "Checkbox" msgid "Checkbox"
msgstr "" msgstr "Casella de verificació"
msgid "Heading" msgid "Heading"
msgstr "" msgstr "Capçalera"
msgid "Horizontal Rule" msgid "Horizontal Rule"
msgstr "" msgstr "Línia horitzontal"
msgid "Click to stop external editing" msgid "Click to stop external editing"
msgstr "" msgstr "Feu-hi clic per a aturar l'edició externa"
#, fuzzy
msgid "Watching..." msgid "Watching..."
msgstr "S'està cancel·lant..." msgstr "S'està vigilant..."
msgid "to-do" msgid "to-do"
msgstr "Tasques pendents" msgstr "Tasques pendents"
@@ -1187,17 +1244,6 @@ msgstr "Suprimeix"
msgid "Rename" msgid "Rename"
msgstr "Canvia el nom" msgstr "Canvia el nom"
msgid "Notebooks"
msgstr "Blocs de notes"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Elements obtinguts: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Recursos: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Seleccioneu on s'hauria d'exportar l'estat de la sincronització" msgstr "Seleccioneu on s'hauria d'exportar l'estat de la sincronització"
@@ -1207,13 +1253,12 @@ msgstr ""
msgid "Add or remove tags" msgid "Add or remove tags"
msgstr "Afegeix o suprimeix etiquetes" msgstr "Afegeix o suprimeix etiquetes"
#, fuzzy
msgid "Duplicate" msgid "Duplicate"
msgstr "Surt de l'aplicació" msgstr "Duplica"
#, fuzzy, javascript-format #, javascript-format
msgid "%s - Copy" msgid "%s - Copy"
msgstr "Copia" msgstr "%s - Còpia"
msgid "Switch between note and to-do type" msgid "Switch between note and to-do type"
msgstr "Alterna entre el tipus nota i tasques pendents" msgstr "Alterna entre el tipus nota i tasques pendents"
@@ -1474,6 +1519,12 @@ msgstr "Clar"
msgid "Dark" msgid "Dark"
msgstr "Fosc" msgstr "Fosc"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Les tasques pendents sense finalitzar a la part superior" msgstr "Les tasques pendents sense finalitzar a la part superior"
@@ -1542,6 +1593,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Mostra la icona a la safata" msgstr "Mostra la icona a la safata"
@@ -1600,23 +1654,19 @@ msgstr "%d hora"
msgid "%d hours" msgid "%d hours"
msgstr "%d hores" msgstr "%d hores"
#, fuzzy
msgid "Text editor command" msgid "Text editor command"
msgstr "Editor de text" msgstr "Ordre de l'editor de text"
#, fuzzy
msgid "" msgid ""
"The editor command (may include arguments) that will be used to open a note. " "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." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
"L'editor que s'usarà per a obrir una nota. Si no s'indica cap, intentarà " "L'ordre de l'editor (que pot incloure arguments) que s'usarà per a obrir una "
"detectar automàticament l'editor predeterminat." "nota. Si no se'n proporciona cap, l'editor predeterminat es detectarà "
"automàticament."
msgid "Show advanced options"
msgstr "Mostra les opcions avançades"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr "Certificats TLS personalitzats"
msgid "" msgid ""
"Comma-separated list of paths to directories to load the certificates from, " "Comma-separated list of paths to directories to load the certificates from, "
@@ -1624,8 +1674,18 @@ msgid ""
"pem. Note that if you make changes to the TLS settings, you must save your " "pem. Note that if you make changes to the TLS settings, you must save your "
"changes before clicking on \"Check synchronisation configuration\"." "changes before clicking on \"Check synchronisation configuration\"."
msgstr "" msgstr ""
"Una llista separada per comes de camins a directoris d'on carregar els "
"certificats, o el camí a fitxers de certificats concrets. Per exemple, "
"el_meu/dir_cert, /altres/personalitzat.pem. Tingueu en compte que si feu "
"canvis en la configuració TLS, cal que els deseu abans de fer clic a "
"«Comprova la configuració de la sincronització»."
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignora els errors de certificat TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr "" msgstr ""
#, fuzzy #, fuzzy
@@ -1733,11 +1793,11 @@ msgstr ""
#, fuzzy, javascript-format #, fuzzy, javascript-format
msgid "%s (%s) could not be uploaded: %s" msgid "%s (%s) could not be uploaded: %s"
msgstr "No s'ha pogut desar el bloc de notes: %s" msgstr "Aquest fitxer no s'ha pogut obrir: %s"
#, fuzzy, javascript-format #, fuzzy, javascript-format
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "No s'ha pogut desar el bloc de notes: %s" msgstr "Aquest fitxer no s'ha pogut obrir: %s"
#, fuzzy #, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
@@ -1788,24 +1848,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "No hi ha cap bloc de notes actiu."
#, fuzzy
msgid "Create a notebook"
msgstr "Crea un bloc de notes nou."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Ara mateix no hi ha cap nota. Creeu-ne una fent clic en el botó (+)." msgstr "Ara mateix no hi ha cap nota. Creeu-ne una fent clic en el botó (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Voleu suprimir aquestes notes?" msgstr "Voleu suprimir aquestes notes?"
msgid "Log"
msgstr "Registre"
msgid "Export Debug Report"
msgstr "Exporta l'informe de depuració"
msgid "Encryption Config"
msgstr "Configuració del xifratge"
msgid "Configuration"
msgstr "Configuració"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mou al bloc de notes..." msgstr "Mou al bloc de notes..."
@@ -1829,8 +1885,35 @@ msgstr "Seleccioneu una data"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmació" msgstr "Confirmació"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Cancel·la la sincronització" msgid "Notebook: %s"
msgstr "Blocs de notes"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Els elements xifrats no es poden modificar"
#, fuzzy
msgid "New Notebook"
msgstr "Bloc de notes nou"
msgid "Configuration"
msgstr "Configuració"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "S'estan desxifrant els elements: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Elements obtinguts: %d/%d."
#, fuzzy
msgid "All notes"
msgstr "Voleu suprimir les notes?"
msgid "Notebooks"
msgstr "Blocs de notes"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1860,7 +1943,7 @@ msgstr ""
#, fuzzy, javascript-format #, fuzzy, javascript-format
msgid "Decrypted items: %s / %s" msgid "Decrypted items: %s / %s"
msgstr "Elements obtinguts: %d/%d." msgstr "S'estan desxifrant els elements: %d/%d"
msgid "New tags:" msgid "New tags:"
msgstr "Etiquetes noves:" msgstr "Etiquetes noves:"
@@ -1868,6 +1951,49 @@ msgstr "Etiquetes noves:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Escriviu etiquetes noves o seleccioneu-ne de la llista" msgstr "Escriviu etiquetes noves o seleccioneu-ne de la llista"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Configuració"
msgid "Encryption Config"
msgstr "Configuració del xifratge"
msgid "Tools"
msgstr "Eines"
#, fuzzy
msgid "Sync Status"
msgstr "Estat"
msgid "Log"
msgstr "Registre"
#, fuzzy
msgid "Creating report..."
msgstr "S'està creant una %s..."
msgid "Export Debug Report"
msgstr "Exporta l'informe de depuració"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Configuració" msgstr "Configuració"
@@ -1936,6 +2062,10 @@ msgstr "No s'ha pogut desar el bloc de notes: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Edita el bloc de notes" msgstr "Edita el bloc de notes"
#, fuzzy
msgid "Enter notebook title"
msgstr "Títol del bloc de notes:"
msgid "Show all" msgid "Show all"
msgstr "Mostra-ho tot" msgstr "Mostra-ho tot"
@@ -1960,10 +2090,32 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"L'aplicació mòbil del Joplin, ara per ara, no admet aquest tipus d'enllaç: %s" "L'aplicació mòbil del Joplin, ara per ara, no admet aquest tipus d'enllaç: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Tipus d'imatge no admesa: %s" msgstr "Tipus d'imatge no admesa: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Actualitzades: %d."
msgid "View on map"
msgstr "Mostra-ho al mapa"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Cerca..."
#, fuzzy
msgid "Choose an option"
msgstr "Mostra les opcions avançades"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Adjunta una imatge" msgstr "Adjunta una imatge"
@@ -1983,23 +2135,18 @@ msgstr "Converteix a nota"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Converteix a llistat de tasques pendents" msgstr "Converteix a llistat de tasques pendents"
msgid "Hide metadata" msgid "Properties"
msgstr "Amaga les metadades" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Mostra les metadades"
msgid "View on map"
msgstr "Mostra-ho al mapa"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Edita" msgstr "Edita"
msgid "Delete notebook" #, fuzzy
msgstr "Suprimeix el bloc de notes" msgid "Add title"
msgstr "títol"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Inicia sessió amb OneDrive" msgstr "Inicia sessió amb OneDrive"
@@ -2007,28 +2154,19 @@ msgstr "Inicia sessió amb OneDrive"
msgid "Search" msgid "Search"
msgstr "Cerca" msgstr "Cerca"
msgid ""
"Click on the (+) button to create a new note or notebook. Click on the side "
"menu to access your existing notebooks."
msgstr ""
"Feu clic en el botó (+) per a crear una nota o bloc de notes. Feu clic en el "
"menú lateral per a accedir als blocs de notes existents."
msgid "You currently have no notebook. Create one by clicking on (+) button."
msgstr ""
"Ara mateix no teniu cap bloc de notes. Creeu-ne un fent clic al botó (+)."
msgid "Welcome"
msgstr "Benvingut"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separeu les etiquetes amb comes." #~ msgstr "Separeu les etiquetes amb comes."
#~ msgid "Some items cannot be decrypted." #~ msgid "Some items cannot be decrypted."
#~ msgstr "Alguns elements no s'han pogut desxifrar." #~ msgstr "Alguns elements no s'han pogut desxifrar."
#~ msgid "%s (%s): %s" #, javascript-format
#~ msgstr "%s (%s): %s" #~ msgid "State: %s."
#~ msgstr "Estat: %s."
#, javascript-format
#~ msgid "A notebook with this title already exists: \"%s\""
#~ msgstr "Ja existeix un bloc de notes amb aquest títol: «%s»"
#~ msgid "" #~ msgid ""
#~ "The path to synchronise with when file system synchronisation is enabled. " #~ "The path to synchronise with when file system synchronisation is enabled. "
@@ -2037,12 +2175,33 @@ msgstr "Benvingut"
#~ "El camí on sincronitzar en activar la sincronització del sistema. Vegeu " #~ "El camí on sincronitzar en activar la sincronització del sistema. Vegeu "
#~ "«sync.target»." #~ "«sync.target»."
#, fuzzy #, javascript-format
#~ msgid "Joplin v%s" #~ msgid "%s (%s): %s"
#~ msgstr "Lloc web del Joplin" #~ msgstr "%s (%s): %s"
#~ msgid "State: %s." #~ msgid "Cancel synchronisation"
#~ msgstr "Estat: %s" #~ msgstr "Cancel·la la sincronització"
#~ msgid "A notebook with this title already exists: \"%s\"" #~ msgid "Hide metadata"
#~ msgstr "Ja existeix un bloc de notes amb aquest títol: «%s»" #~ msgstr "Amaga les metadades"
#~ msgid "Show metadata"
#~ msgstr "Mostra les metadades"
#~ msgid "Delete notebook"
#~ msgstr "Suprimeix el bloc de notes"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Feu clic en el botó (+) per a crear una nota o bloc de notes. Feu clic en "
#~ "el menú lateral per a accedir als blocs de notes existents."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Ara mateix no teniu cap bloc de notes. Creeu-ne un fent clic al botó (+)."
#~ msgid "Welcome"
#~ msgstr "Benvingut"

View File

@@ -385,6 +385,23 @@ msgstr "Smazat poznámku?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Hledá <zadání> ve všech poznámkách." msgstr "Hledá <zadání> ve všech poznámkách."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -523,6 +540,10 @@ msgstr "Zadejte `joplin help` pro nápovědu."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Fatální chyba:" msgstr "Fatální chyba:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Aplikace byla autorizována, tento tab můžete zavřít." msgstr "Aplikace byla autorizována, tento tab můžete zavřít."
@@ -618,6 +639,27 @@ msgstr "Nastavení šifrování"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web clipper volby" msgstr "Web clipper volby"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Vložit datum a čas"
#, fuzzy
msgid "Open template directory"
msgstr "Složka pro export"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -635,6 +677,9 @@ msgstr "Nastavení..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Zkontrolovat updaty..." msgstr "Zkontrolovat updaty..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Import" msgstr "Import"
@@ -679,12 +724,18 @@ msgstr "Kurzíva"
msgid "Link" msgid "Link"
msgstr "Odkaz" msgstr "Odkaz"
msgid "Code"
msgstr "Kód"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Vložit datum a čas" msgstr "Vložit datum a čas"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Upravit externím editorem" msgstr "Upravit externím editorem"
msgid "Tags"
msgstr "Tagy"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Hledat ve všech poznámkách" msgstr "Hledat ve všech poznámkách"
@@ -716,6 +767,10 @@ msgstr "Nápověda"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Web a dokumentace" msgstr "Web a dokumentace"
#, fuzzy
msgid "Joplin Forum"
msgstr "Web Joplinu"
msgid "Make a donation" msgid "Make a donation"
msgstr "Přispět" msgstr "Přispět"
@@ -916,8 +971,8 @@ msgstr ""
"staženy při synchronizaci." "staženy při synchronizaci."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Pro více informací o End-To-End šifrování (E2EE) a návod jak je povolit " "Pro více informací o End-To-End šifrování (E2EE) a návod jak je povolit "
"náhledněte do dokumentace:" "náhledněte do dokumentace:"
@@ -960,6 +1015,9 @@ msgstr "Přejmenovat tag:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Nastavit alarm:" msgstr "Nastavit alarm:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -996,6 +1054,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Seznam položek" msgstr "Seznam položek"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1067,9 +1128,6 @@ msgstr "Vložit odkaz"
msgid "Attach file" msgid "Attach file"
msgstr "Přiložit soubor" msgstr "Přiložit soubor"
msgid "Tags"
msgstr "Tagy"
msgid "Set alarm" msgid "Set alarm"
msgstr "Nastavit alarm" msgstr "Nastavit alarm"
@@ -1080,9 +1138,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Odkaz" msgstr "Odkaz"
msgid "Code"
msgstr "Kód"
msgid "Numbered List" msgid "Numbered List"
msgstr "Číslovanáý seznam" msgstr "Číslovanáý seznam"
@@ -1160,17 +1215,6 @@ msgstr "Smazat"
msgid "Rename" msgid "Rename"
msgstr "Přejmenovat" msgstr "Přejmenovat"
msgid "Notebooks"
msgstr "Zápisníky"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Rozšifrované položky: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Stahování zdrojů: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Prosím vyberte, kam má být stav synchronizace exportován" msgstr "Prosím vyberte, kam má být stav synchronizace exportován"
@@ -1452,6 +1496,12 @@ msgstr "Světlý"
msgid "Dark" msgid "Dark"
msgstr "Tmavý" msgstr "Tmavý"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Nedokončené to-do listy nahoře" msgstr "Nedokončené to-do listy nahoře"
@@ -1518,6 +1568,10 @@ msgstr "Povolit ++insert++ syntaxi"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Povolit rozšíření multimarkdown tabulky" msgstr "Povolit rozšíření multimarkdown tabulky"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Povolit ~sub~ syntaxi"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Zobrazovat ikonu v panelu" msgstr "Zobrazovat ikonu v panelu"
@@ -1587,9 +1641,6 @@ msgstr ""
"Editor ve kterém budou otvírány poznámky. Pokud není specifikováno, aplikace " "Editor ve kterém budou otvírány poznámky. Pokud není specifikováno, aplikace "
"se pokusí o autodetekci defaultního editoru." "se pokusí o autodetekci defaultního editoru."
msgid "Show advanced options"
msgstr "Ukázat pokročilé volby"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Vlastní TLS certifikát" msgstr "Vlastní TLS certifikát"
@@ -1607,6 +1658,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorovat chyby TLS certifikátu" msgstr "Ignorovat chyby TLS certifikátu"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Povolit poznámky pod čarou" msgstr "Povolit poznámky pod čarou"
@@ -1762,24 +1818,20 @@ msgstr "Oprávnění použít kameru"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Je vyžadováno oprávnění použít vaši kameru." msgstr "Je vyžadováno oprávnění použít vaši kameru."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Není vybrán žádný zápisník."
#, fuzzy
msgid "Create a notebook"
msgstr "Vytvoří nový zápisník."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Nemáte žádné poznámky. Vytvořte jednu kliknutím na tlačítko (+)." msgstr "Nemáte žádné poznámky. Vytvořte jednu kliknutím na tlačítko (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Smazat tyto poznámky?" msgstr "Smazat tyto poznámky?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Exportovat Debug Report"
msgid "Encryption Config"
msgstr "Nastavení šifrování"
msgid "Configuration"
msgstr "Nastavení"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Přesunout do zápisníku..." msgstr "Přesunout do zápisníku..."
@@ -1802,8 +1854,35 @@ msgstr "Vybrat datum"
msgid "Confirm" msgid "Confirm"
msgstr "Potvrdit" msgstr "Potvrdit"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Zrušit synchronizaci" msgid "Notebook: %s"
msgstr "Zápisníky"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Nelze editovat zašifrovanou položku"
#, fuzzy
msgid "New Notebook"
msgstr "Nový zápisník"
msgid "Configuration"
msgstr "Nastavení"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Rozšifrované položky: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Stahování zdrojů: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "poznámka"
msgid "Notebooks"
msgstr "Zápisníky"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1846,6 +1925,50 @@ msgstr "Nové tagy:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Zadejte nové tagy, nebo vyberte existující ze seznamu" msgstr "Zadejte nové tagy, nebo vyberte existující ze seznamu"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Nastavení"
msgid "Encryption Config"
msgstr "Nastavení šifrování"
#, fuzzy
msgid "Tools"
msgstr "Nástroje"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Vytvářím %s..."
msgid "Export Debug Report"
msgstr "Exportovat Debug Report"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Nastavení" msgstr "Nastavení"
@@ -1912,6 +2035,10 @@ msgstr "Nebylo možné uložit zápisník: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Upravit zápisník" msgstr "Upravit zápisník"
#, fuzzy
msgid "Enter notebook title"
msgstr "Název zápisníku:"
msgid "Show all" msgid "Show all"
msgstr "Zobrazit vše" msgstr "Zobrazit vše"
@@ -1935,10 +2062,32 @@ msgstr "Nenalezena položka s ID %s"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "Mobilní aplikace Joplin aktuálně nepodporuje tento typ odkazu:% s" msgstr "Mobilní aplikace Joplin aktuálně nepodporuje tento typ odkazu:% s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Nepodporovaný formát obrázku: %s" msgstr "Nepodporovaný formát obrázku: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Upraveno: %d."
msgid "View on map"
msgstr "Zobrazit na map+"
msgid "Go to source URL"
msgstr "Jít na zdrojovou URL"
#, fuzzy
msgid "Attach..."
msgstr "Hledat..."
#, fuzzy
msgid "Choose an option"
msgstr "Ukázat pokročilé volby"
msgid "Take photo" msgid "Take photo"
msgstr "Přiložit foto" msgstr "Přiložit foto"
@@ -1957,23 +2106,19 @@ msgstr "Konvertovat na poznámku"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Konvertovat na todo" msgstr "Konvertovat na todo"
msgid "Hide metadata" #, fuzzy
msgstr "Schovat metadata" msgid "Properties"
msgstr "Nastavení poznámek"
msgid "Show metadata" msgid "Add body"
msgstr "Zobrazit metadata" msgstr ""
msgid "View on map"
msgstr "Zobrazit na map+"
msgid "Go to source URL"
msgstr "Jít na zdrojovou URL"
msgid "Edit" msgid "Edit"
msgstr "Upravit" msgstr "Upravit"
msgid "Delete notebook" #, fuzzy
msgstr "Smazat zápisník" msgid "Add title"
msgstr "bez názvu"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Přihlásit se pomocí OneDrive" msgstr "Přihlásit se pomocí OneDrive"
@@ -1981,18 +2126,35 @@ msgstr "Přihlásit se pomocí OneDrive"
msgid "Search" msgid "Search"
msgstr "Hledání" msgstr "Hledání"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Oprávnění použít kameru"
msgstr ""
"Vytvořte novou poznámku či zápisník kliknutím na tlačítko (+). Pro přístup k "
"existujícím zápisníkům použijte postranní menu."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "Nemáte žádný zápisník. Vytvořte jeden kliknutím na tlačítko (+)." #~ msgstr "Zrušit synchronizaci"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Vítejte" #~ msgstr "Schovat metadata"
#~ msgid "Show metadata"
#~ msgstr "Zobrazit metadata"
#~ msgid "Delete notebook"
#~ msgstr "Smazat zápisník"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Vytvořte novou poznámku či zápisník kliknutím na tlačítko (+). Pro "
#~ "přístup k existujícím zápisníkům použijte postranní menu."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Nemáte žádný zápisník. Vytvořte jeden kliknutím na tlačítko (+)."
#~ msgid "Welcome"
#~ msgstr "Vítejte"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Tagy oddělujte čárkami." #~ msgstr "Tagy oddělujte čárkami."
@@ -2010,10 +2172,6 @@ msgstr "Vítejte"
#~ "Cesta ke složce, se kterou synchronizovat, pokud je cílem synchronizace " #~ "Cesta ke složce, se kterou synchronizovat, pokud je cílem synchronizace "
#~ "místní souborový systém. Viz `sync.target`." #~ "místní souborový systém. Viz `sync.target`."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Web Joplinu"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Stav: %s." #~ msgstr "Stav: %s."

View File

@@ -390,6 +390,23 @@ msgstr "Slet note?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Søger efter <pattern> mønster i alle noter." msgstr "Søger efter <pattern> mønster i alle noter."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -525,6 +542,10 @@ msgstr "Tast `Joplin help` for alm. info."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Kritisk fejl:" msgstr "Kritisk fejl:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Denne app er godkendt - du kan nu lukke dette faneblad." msgstr "Denne app er godkendt - du kan nu lukke dette faneblad."
@@ -622,6 +643,26 @@ msgstr "Krypterings muligheder"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
#, fuzzy
msgid "Open template directory"
msgstr "Joplin eksport mappe"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -639,6 +680,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Checker om der er opdateringer.." msgstr "Checker om der er opdateringer.."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importer" msgstr "Importer"
@@ -684,12 +728,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Mærker"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Søg i alle noter" msgstr "Søg i alle noter"
@@ -722,6 +772,10 @@ msgstr "Hjælp"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Joplins hjemmeside og dokumentation" msgstr "Joplins hjemmeside og dokumentation"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin hjemmeside"
msgid "Make a donation" msgid "Make a donation"
msgstr "Giv en donation" msgstr "Giv en donation"
@@ -917,8 +971,8 @@ msgstr ""
"(på et eller andet tidspunkt) via synkroniseringen." "(på et eller andet tidspunkt) via synkroniseringen."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Se dokumentationen for nærmere oplysninger om End-To-End-kryptering (E2EE) " "Se dokumentationen for nærmere oplysninger om End-To-End-kryptering (E2EE) "
"og vejledning om hvordan det skal opsættes_" "og vejledning om hvordan det skal opsættes_"
@@ -963,6 +1017,9 @@ msgstr "Omdøb"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Indstil alarm:" msgstr "Indstil alarm:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -1000,6 +1057,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Notesbøger" msgstr "Notesbøger"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1070,9 +1130,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Vedhæft fil" msgstr "Vedhæft fil"
msgid "Tags"
msgstr "Mærker"
msgid "Set alarm" msgid "Set alarm"
msgstr "Indstil alarm" msgstr "Indstil alarm"
@@ -1083,9 +1140,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1163,17 +1217,6 @@ msgstr "Slet"
msgid "Rename" msgid "Rename"
msgstr "Omdøb" msgstr "Omdøb"
msgid "Notebooks"
msgstr "Notesbøger"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Hentede emner: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Ressourcer: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Vælg hvor sync status skal eksporteres til" msgstr "Vælg hvor sync status skal eksporteres til"
@@ -1455,6 +1498,12 @@ msgstr "Lyst"
msgid "Dark" msgid "Dark"
msgstr "Mørkt" msgstr "Mørkt"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Ufærdige opgaver øverst" msgstr "Ufærdige opgaver øverst"
@@ -1524,6 +1573,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Vis ikon på bundbjælke" msgstr "Vis ikon på bundbjælke"
@@ -1594,9 +1646,6 @@ msgstr ""
"Editor der bruges til at åbne note. Hvis ingen valgt/udfyldt, vil auto-" "Editor der bruges til at åbne note. Hvis ingen valgt/udfyldt, vil auto-"
"funktion søge efter standard editor." "funktion søge efter standard editor."
msgid "Show advanced options"
msgstr "Vis avancerede indstillinger"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1610,6 +1659,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Start kryptering" msgstr "Start kryptering"
@@ -1770,24 +1824,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ingen aktiv notesbog."
#, fuzzy
msgid "Create a notebook"
msgstr "Opretter en ny notesbog."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Der er ingen noter. Opret note ved at klikke på (+) knappen." msgstr "Der er ingen noter. Opret note ved at klikke på (+) knappen."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Slet disse noter?" msgstr "Slet disse noter?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Eksporter undersøgelses rapport"
msgid "Encryption Config"
msgstr "Krypterings indstillinger"
msgid "Configuration"
msgstr "Indstillinger"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Flyt til notesbog..." msgstr "Flyt til notesbog..."
@@ -1812,8 +1862,35 @@ msgstr "Vælg dato"
msgid "Confirm" msgid "Confirm"
msgstr "Bekræft" msgstr "Bekræft"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Afbryd synkronisering" msgid "Notebook: %s"
msgstr "Notesbøger"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Krypteret emner kan ikke rettes"
#, fuzzy
msgid "New Notebook"
msgstr "Ny notesbog"
msgid "Configuration"
msgstr "Indstillinger"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Hentede emner: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Ressourcer: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "note"
msgid "Notebooks"
msgstr "Notesbøger"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1851,6 +1928,50 @@ msgstr "Nye tags:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Indtast nye tags eller vælg fra listen" msgstr "Indtast nye tags eller vælg fra listen"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Indstillinger"
msgid "Encryption Config"
msgstr "Krypterings indstillinger"
#, fuzzy
msgid "Tools"
msgstr "Værktøjer"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Opretter ny %s..."
msgid "Export Debug Report"
msgstr "Eksporter undersøgelses rapport"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Indstillinger" msgstr "Indstillinger"
@@ -1913,6 +2034,10 @@ msgstr "Notesbogen kan ikke gemmes: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Rediger notesbog" msgstr "Rediger notesbog"
#, fuzzy
msgid "Enter notebook title"
msgstr "Notesbogs titel:"
msgid "Show all" msgid "Show all"
msgstr "Vis alt" msgstr "Vis alt"
@@ -1936,10 +2061,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Ulovlig billedtype: %s" msgstr "Ulovlig billedtype: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Opdateret %d."
msgid "View on map"
msgstr "Vis på kort"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Søg"
#, fuzzy
msgid "Choose an option"
msgstr "Vis avancerede indstillinger"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Vedhæft foto" msgstr "Vedhæft foto"
@@ -1959,23 +2106,18 @@ msgstr "Konverter til note"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Konverter til opgave" msgstr "Konverter til opgave"
msgid "Hide metadata" msgid "Properties"
msgstr "Skjul metadata" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Vis metadata"
msgid "View on map"
msgstr "Vis på kort"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Ret" msgstr "Ret"
msgid "Delete notebook" #, fuzzy
msgstr "Slet notesbog" msgid "Add title"
msgstr "Samlet"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Log på med OneDrive" msgstr "Log på med OneDrive"
@@ -1983,18 +2125,31 @@ msgstr "Log på med OneDrive"
msgid "Search" msgid "Search"
msgstr "Søg" msgstr "Søg"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Afbryd synkronisering"
"menu to access your existing notebooks."
msgstr ""
"Klik på (+) knappen for at oprette ny note eller notesbog. Klik på side menu "
"for at åbne eksisterende notesbøger."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "Du har ingen notesbøger. Opret en ved at klikke på (+) knappen." #~ msgstr "Skjul metadata"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Velkommen" #~ msgstr "Vis metadata"
#~ msgid "Delete notebook"
#~ msgstr "Slet notesbog"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Klik på (+) knappen for at oprette ny note eller notesbog. Klik på side "
#~ "menu for at åbne eksisterende notesbøger."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Du har ingen notesbøger. Opret en ved at klikke på (+) knappen."
#~ msgid "Welcome"
#~ msgstr "Velkommen"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Adskil hver mærke med komma." #~ msgstr "Adskil hver mærke med komma."
@@ -2012,10 +2167,6 @@ msgstr "Velkommen"
#~ "Sti til synkronisering, når filsystem synkronisering er slået til. Se " #~ "Sti til synkronisering, når filsystem synkronisering er slået til. Se "
#~ "`sync.target`." #~ "`sync.target`."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Joplin hjemmeside"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Tilstand: %s." #~ msgstr "Tilstand: %s."

View File

@@ -403,6 +403,23 @@ msgstr "Notiz löschen?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Sucht nach dem angegebenen <pattern> in allen Notizen." msgstr "Sucht nach dem angegebenen <pattern> in allen Notizen."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -544,6 +561,12 @@ msgstr "Gib `joplin help` ein um die Nutzungsstatistik anzuzeigen."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Schwerwiegender Fehler:" msgstr "Schwerwiegender Fehler:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
"Alle potentielle Port-Nummern sind in Verwendung - bitte melde dieses "
"Problem auf %s"
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -597,7 +620,7 @@ msgstr ""
#, javascript-format #, javascript-format
msgid "Exporting to \"%s\" as \"%s\" format. Please wait..." msgid "Exporting to \"%s\" as \"%s\" format. Please wait..."
msgstr "Exportiere „%s“ ins „%s“ Format. Bitte warten..." msgstr "Exportiere „%s“ ins „%s“-Format. Bitte warten..."
msgid "Sidebar" msgid "Sidebar"
msgstr "Seitenleiste" msgstr "Seitenleiste"
@@ -606,14 +629,14 @@ msgid "Note list"
msgstr "Notizen-Liste" msgstr "Notizen-Liste"
msgid "Note title" msgid "Note title"
msgstr "Notiz Titel" msgstr "Notiz-Titel"
msgid "Note body" msgid "Note body"
msgstr "Notiz Text" msgstr "Notiz-Text"
#, javascript-format #, javascript-format
msgid "Importing from \"%s\" as \"%s\" format. Please wait..." msgid "Importing from \"%s\" as \"%s\" format. Please wait..."
msgstr "Importiere „%s“ ins „%s“ Format. Bitte warten..." msgstr "Importiere „%s“ als „%s“-Format. Bitte warten..."
msgid "PDF File" msgid "PDF File"
msgstr "PDF-Datei" msgstr "PDF-Datei"
@@ -642,6 +665,25 @@ msgstr "Verschlüsselungsoptionen"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web-Clipper Optionen" msgstr "Web-Clipper Optionen"
msgid "Create note from template"
msgstr "Erstelle Notiz von Vorlage"
msgid "Create to-do from template"
msgstr "Erstelle To-Do von Vorlage"
msgid "Insert template"
msgstr "Vorlage einfügen"
msgid "Open template directory"
msgstr "Öffne Vorlagen Verzeichnis"
msgid "Refresh templates"
msgstr "Aktualisiere Vorlagen"
#, javascript-format
msgid "Revision: %s (%s)"
msgstr "Revision: %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -658,6 +700,9 @@ msgstr "Einstellungen..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Überprüfe auf Aktualisierungen..." msgstr "Überprüfe auf Aktualisierungen..."
msgid "Templates"
msgstr "Vorlagen"
msgid "Import" msgid "Import"
msgstr "Importieren" msgstr "Importieren"
@@ -701,12 +746,18 @@ msgstr "Kursiv"
msgid "Link" msgid "Link"
msgstr "Link" msgstr "Link"
msgid "Code"
msgstr "Code"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Datum / Uhrzeit einfügen" msgstr "Datum / Uhrzeit einfügen"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Im externen Editor bearbeiten" msgstr "Im externen Editor bearbeiten"
msgid "Tags"
msgstr "Schlagwörter"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Alle Notizen durchsuchen" msgstr "Alle Notizen durchsuchen"
@@ -734,6 +785,10 @@ msgstr "&Hilfe"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Webseite und Dokumentation" msgstr "Webseite und Dokumentation"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Spenden" msgstr "Spenden"
@@ -939,8 +994,8 @@ msgstr ""
"Die Hauptschlüssel dieser IDs werden für die Verschlüsselung einiger ..." "Die Hauptschlüssel dieser IDs werden für die Verschlüsselung einiger ..."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Weitere Informationen zur Ende-zu-Ende-Verschlüsselung (E2EE) und Hinweise " "Weitere Informationen zur Ende-zu-Ende-Verschlüsselung (E2EE) und Hinweise "
"zur Aktivierung findest du in der Dokumentation (auf Englisch):" "zur Aktivierung findest du in der Dokumentation (auf Englisch):"
@@ -986,6 +1041,9 @@ msgstr "Schlagwort umbenennen:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Alarm erstellen:" msgstr "Alarm erstellen:"
msgid "Template file:"
msgstr "Vorlagen-Datei:"
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -1024,6 +1082,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Notizen-Verlauf" msgstr "Notizen-Verlauf"
msgid "Markup"
msgstr "Markup"
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Vorherige Version von dieser Notiz" msgstr "Vorherige Version von dieser Notiz"
@@ -1100,9 +1161,6 @@ msgstr "Weblink einfügen"
msgid "Attach file" msgid "Attach file"
msgstr "Datei anhängen" msgstr "Datei anhängen"
msgid "Tags"
msgstr "Schlagwörter"
msgid "Set alarm" msgid "Set alarm"
msgstr "Alarm erstellen" msgstr "Alarm erstellen"
@@ -1113,9 +1171,6 @@ msgstr "In: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Weblink" msgstr "Weblink"
msgid "Code"
msgstr "Code"
msgid "Numbered List" msgid "Numbered List"
msgstr "Nummerierte Liste" msgstr "Nummerierte Liste"
@@ -1194,17 +1249,6 @@ msgstr "Löschen"
msgid "Rename" msgid "Rename"
msgstr "Umbenennen" msgstr "Umbenennen"
msgid "Notebooks"
msgstr "Notizbücher"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Entschlüsselte Objekte: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Ressourcen abrufen: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
"Bitte wähle aus, wohin der Synchronisations-Status exportiert werden soll" "Bitte wähle aus, wohin der Synchronisations-Status exportiert werden soll"
@@ -1490,6 +1534,12 @@ msgstr "Hell"
msgid "Dark" msgid "Dark"
msgstr "Dunkel" msgstr "Dunkel"
msgid "Solarised Light"
msgstr "Solarized Hell"
msgid "Solarised Dark"
msgstr "Solarised Dark"
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Zeige unvollständige To-Dos an oberster Stelle" msgstr "Zeige unvollständige To-Dos an oberster Stelle"
@@ -1556,6 +1606,10 @@ msgstr "Aktiviere ++insert++ Syntax"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Aktiviere multimarkdown Tabellen Erweiterung" msgstr "Aktiviere multimarkdown Tabellen Erweiterung"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Aktiviere ~sub~ Syntax"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Zeige Tray-Icon" msgstr "Zeige Tray-Icon"
@@ -1626,9 +1680,6 @@ msgstr ""
"Der Editor, mit dem Notizen geöffnet werden. Wenn keiner ausgewählt wurde, " "Der Editor, mit dem Notizen geöffnet werden. Wenn keiner ausgewählt wurde, "
"wird Joplin versuchen den Standardeditor zu erkennen." "wird Joplin versuchen den Standardeditor zu erkennen."
msgid "Show advanced options"
msgstr "Erweiterte Optionen anzeigen"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Benutzerdefinierte TLS-Zertifikate" msgstr "Benutzerdefinierte TLS-Zertifikate"
@@ -1647,6 +1698,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignoriere TLS-Zertifikatfehler" msgstr "Ignoriere TLS-Zertifikatfehler"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "Aktiviere Notizen-Verlauf" msgstr "Aktiviere Notizen-Verlauf"
@@ -1807,6 +1863,14 @@ msgstr "Berechtigung zur Verwendung der Kamera"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Deine Zustimmung zur Verwendung deiner Kamera ist erforderlich." msgstr "Deine Zustimmung zur Verwendung deiner Kamera ist erforderlich."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Die/das momentan ausgewählte Notiz(-buch) löschen."
#, fuzzy
msgid "Create a notebook"
msgstr "Erstellt ein neues Notizbuch."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
"Momentan existieren noch keine Notizen. Erstelle eine, indem du auf den (+) " "Momentan existieren noch keine Notizen. Erstelle eine, indem du auf den (+) "
@@ -1815,18 +1879,6 @@ msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Sollen diese Notizen gelöscht werden?" msgstr "Sollen diese Notizen gelöscht werden?"
msgid "Log"
msgstr "Protokoll"
msgid "Export Debug Report"
msgstr "Fehlerbericht exportieren"
msgid "Encryption Config"
msgstr "Verschlüsselungskonfiguration"
msgid "Configuration"
msgstr "Konfiguration"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "In Notizbuch verschieben..." msgstr "In Notizbuch verschieben..."
@@ -1849,8 +1901,32 @@ msgstr "Datum auswählen"
msgid "Confirm" msgid "Confirm"
msgstr "Bestätigen" msgstr "Bestätigen"
msgid "Cancel synchronisation" #, javascript-format
msgstr "Synchronisation abbrechen" msgid "Notebook: %s"
msgstr "Notizbuch: %s"
msgid "Encrypted notebooks cannot be renamed"
msgstr "Verschlüsselte Notizbücher können nicht umbenannt werden"
msgid "New Notebook"
msgstr "Neues Notizbuch"
msgid "Configuration"
msgstr "Konfiguration"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Entschlüsselte Objekte: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Ressourcen abrufen: %d/%d"
msgid "All notes"
msgstr "Alle Notizen"
msgid "Notebooks"
msgstr "Notizbücher"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Überprüfe… Bitte warten." msgstr "Überprüfe… Bitte warten."
@@ -1893,6 +1969,51 @@ msgstr "Neue Schlagwörter:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Neues Schlagwort eingeben oder aus der Liste auswählen" msgstr "Neues Schlagwort eingeben oder aus der Liste auswählen"
msgid "Warning"
msgstr "Warnung"
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
"Deine Erlaubnis auf externen Speicher zu schreiben ist notwendig um "
"Synchronisation mit dem Dateisystem zu verwenden."
msgid "Information"
msgstr "Information"
msgid "Encryption Config"
msgstr "Verschlüsselungskonfiguration"
msgid "Tools"
msgstr "Werkzeuge"
msgid "Sync Status"
msgstr "Synchronisationsstatus"
msgid "Log"
msgstr "Protokoll"
msgid "Creating report..."
msgstr "Erstelle Bericht..."
msgid "Export Debug Report"
msgstr "Fehlerbericht exportieren"
msgid "Fixing search index..."
msgstr "Repariere Such-Index..."
msgid "Fix search index"
msgstr "Repariere Such-Index"
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
"Verwende das um den Such-Index wiederherzustellen, wenn es ein Problem mit "
"der Suche gibt. Je nachdem wieviele Notizen es gibt, kann dieser Prozess "
"etwas dauern."
msgid "More information" msgid "More information"
msgstr "Weitere Information" msgstr "Weitere Information"
@@ -1959,6 +2080,9 @@ msgstr "Dieses Notizbuch konnte nicht gespeichert werden: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Notizbuch bearbeiten" msgstr "Notizbuch bearbeiten"
msgid "Enter notebook title"
msgstr "Notizbuch-Titel eingeben"
msgid "Show all" msgid "Show all"
msgstr "Zeige Alles" msgstr "Zeige Alles"
@@ -1983,10 +2107,30 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"Die Joplin Handy-Applikation unterstützt derzeit diese Art von Link nicht: %s" "Die Joplin Handy-Applikation unterstützt derzeit diese Art von Link nicht: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "Verweise mit dem Protokoll \"%s\" sind nicht unterstützt"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Nicht unterstütztes Fotoformat: %s" msgstr "Nicht unterstütztes Fotoformat: %s"
#, javascript-format
msgid "Updated: %s"
msgstr "Aktualisiert: %s"
msgid "View on map"
msgstr "Auf der Karte anzeigen"
msgid "Go to source URL"
msgstr "Zur Quell-URL gehen"
msgid "Attach..."
msgstr "Anhängen..."
msgid "Choose an option"
msgstr "Wähle eine Option"
msgid "Take photo" msgid "Take photo"
msgstr "Foto aufnehmen" msgstr "Foto aufnehmen"
@@ -2005,23 +2149,17 @@ msgstr "In eine Notiz umwandeln"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "In ein To-Do umwandeln" msgstr "In ein To-Do umwandeln"
msgid "Hide metadata" msgid "Properties"
msgstr "Metadaten verstecken" msgstr "Eigenschaften"
msgid "Show metadata" msgid "Add body"
msgstr "Metadaten anzeigen" msgstr "Text hinzufügen"
msgid "View on map"
msgstr "Auf der Karte anzeigen"
msgid "Go to source URL"
msgstr "Zur Quell-URL gehen"
msgid "Edit" msgid "Edit"
msgstr "Bearbeiten" msgstr "Bearbeiten"
msgid "Delete notebook" msgid "Add title"
msgstr "Notizbuch löschen" msgstr "Titel hinzufügen"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Mit OneDrive anmelden" msgstr "Mit OneDrive anmelden"
@@ -2029,21 +2167,38 @@ msgstr "Mit OneDrive anmelden"
msgid "Search" msgid "Search"
msgstr "Suchen" msgstr "Suchen"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Berechtigung zur Verwendung der Kamera"
msgstr ""
"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." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "Synchronisation abbrechen"
"Du hast noch kein Notizbuch angelegt. Erstelle eines, indem du auf den (+) "
"Knopf drückst."
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Willkommen" #~ msgstr "Metadaten verstecken"
#~ msgid "Show metadata"
#~ msgstr "Metadaten anzeigen"
#~ msgid "Delete notebook"
#~ msgstr "Notizbuch löschen"
#~ 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 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."
#~ msgstr ""
#~ "Du hast noch kein Notizbuch angelegt. Erstelle eines, indem du auf den "
#~ "(+) Knopf drückst."
#~ msgid "Welcome"
#~ msgstr "Willkommen"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Trenne jedes Schlagwort mit einem Komma." #~ msgstr "Trenne jedes Schlagwort mit einem Komma."
@@ -2064,15 +2219,9 @@ msgstr "Willkommen"
#~ "Der Pfad, mit dem synchronisiert werden soll, wenn die Dateisystem-" #~ "Der Pfad, mit dem synchronisiert werden soll, wenn die Dateisystem-"
#~ "Synchronisation aktiviert ist. Siehe `sync.target`." #~ "Synchronisation aktiviert ist. Siehe `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "Remove?" #~ msgid "Remove?"
#~ msgstr "Löschen?" #~ msgstr "Löschen?"
#~ msgid "Delete notes?"
#~ msgstr "Notizen löschen?"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Status: %s." #~ msgstr "Status: %s."
@@ -2128,9 +2277,6 @@ msgstr "Willkommen"
#~ msgid "Exit the application." #~ msgid "Exit the application."
#~ msgstr "Das Programm verlassen." #~ msgstr "Das Programm verlassen."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Die/das momentan ausgewählte Notiz(-buch) löschen."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Ein To-Do als abgeschlossen / nicht abgeschlossen markieren" #~ msgstr "Ein To-Do als abgeschlossen / nicht abgeschlossen markieren"

View File

@@ -353,6 +353,23 @@ msgstr ""
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "" msgstr ""
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -470,6 +487,10 @@ msgstr ""
msgid "Fatal error:" msgid "Fatal error:"
msgstr "" msgstr ""
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -551,6 +572,25 @@ msgstr ""
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, javascript-format
msgid "Revision: %s (%s)"
msgstr ""
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "" msgstr ""
@@ -567,6 +607,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "" msgstr ""
@@ -610,12 +653,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "" msgstr ""
@@ -643,6 +692,9 @@ msgstr ""
msgid "Website and documentation" msgid "Website and documentation"
msgstr "" msgstr ""
msgid "Joplin Forum"
msgstr ""
msgid "Make a donation" msgid "Make a donation"
msgstr "" msgstr ""
@@ -824,8 +876,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -866,6 +918,9 @@ msgstr ""
msgid "Set alarm:" msgid "Set alarm:"
msgstr "" msgstr ""
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "" msgstr ""
@@ -900,6 +955,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "" msgstr ""
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -969,9 +1027,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Set alarm" msgid "Set alarm"
msgstr "" msgstr ""
@@ -982,9 +1037,6 @@ msgstr ""
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1060,17 +1112,6 @@ msgstr ""
msgid "Rename" msgid "Rename"
msgstr "" msgstr ""
msgid "Notebooks"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
@@ -1334,6 +1375,12 @@ msgstr ""
msgid "Dark" msgid "Dark"
msgstr "" msgstr ""
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "" msgstr ""
@@ -1400,6 +1447,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1462,9 +1512,6 @@ msgid ""
"If none is provided it will try to auto-detect the default editor." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
msgid "Show advanced options"
msgstr ""
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1478,6 +1525,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "" msgstr ""
@@ -1626,24 +1678,18 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
msgid "You currently have no notebooks."
msgstr ""
msgid "Create a notebook"
msgstr ""
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "" msgstr ""
msgid "Log"
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Configuration"
msgstr ""
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "" msgstr ""
@@ -1666,7 +1712,31 @@ msgstr ""
msgid "Confirm" msgid "Confirm"
msgstr "" msgstr ""
msgid "Cancel synchronisation" #, javascript-format
msgid "Notebook: %s"
msgstr ""
msgid "Encrypted notebooks cannot be renamed"
msgstr ""
msgid "New Notebook"
msgstr ""
msgid "Configuration"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "All notes"
msgstr ""
msgid "Notebooks"
msgstr "" msgstr ""
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1702,6 +1772,46 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
msgid "Information"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Tools"
msgstr ""
msgid "Sync Status"
msgstr ""
msgid "Log"
msgstr ""
msgid "Creating report..."
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
msgid "More information" msgid "More information"
msgstr "" msgstr ""
@@ -1762,6 +1872,9 @@ msgstr ""
msgid "Edit notebook" msgid "Edit notebook"
msgstr "" msgstr ""
msgid "Enter notebook title"
msgstr ""
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1785,10 +1898,30 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Updated: %s"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr ""
msgid "Attach..."
msgstr ""
msgid "Choose an option"
msgstr ""
msgid "Take photo" msgid "Take photo"
msgstr "" msgstr ""
@@ -1807,22 +1940,16 @@ msgstr ""
msgid "Convert to todo" msgid "Convert to todo"
msgstr "" msgstr ""
msgid "Hide metadata" msgid "Properties"
msgstr "" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "" msgstr ""
msgid "Delete notebook" msgid "Add title"
msgstr "" msgstr ""
msgid "Login with OneDrive" msgid "Login with OneDrive"
@@ -1830,14 +1957,3 @@ msgstr ""
msgid "Search" msgid "Search"
msgstr "" msgstr ""
msgid ""
"Click on the (+) button to create a new note or notebook. Click on the side "
"menu to access your existing notebooks."
msgstr ""
msgid "You currently have no notebook. Create one by clicking on (+) button."
msgstr ""
msgid "Welcome"
msgstr ""

View File

@@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.1\n" "X-Generator: Poedit 2.2.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "To delete a tag, untag the associated notes." msgid "To delete a tag, untag the associated notes."
@@ -354,6 +354,23 @@ msgstr ""
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "" msgstr ""
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -475,6 +492,10 @@ msgstr ""
msgid "Fatal error:" msgid "Fatal error:"
msgstr "" msgstr ""
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -557,6 +578,25 @@ msgstr ""
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, javascript-format
msgid "Revision: %s (%s)"
msgstr ""
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "" msgstr ""
@@ -573,6 +613,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "" msgstr ""
@@ -616,12 +659,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Search in all notes" msgstr "Search in all notes"
@@ -649,6 +698,9 @@ msgstr ""
msgid "Website and documentation" msgid "Website and documentation"
msgstr "" msgstr ""
msgid "Joplin Forum"
msgstr ""
msgid "Make a donation" msgid "Make a donation"
msgstr "" msgstr ""
@@ -842,8 +894,8 @@ msgstr ""
"they will eventually be downloaded via synchronization." "they will eventually be downloaded via synchronization."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -884,6 +936,9 @@ msgstr ""
msgid "Set alarm:" msgid "Set alarm:"
msgstr "" msgstr ""
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "" msgstr ""
@@ -918,6 +973,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "" msgstr ""
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -987,9 +1045,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Set alarm" msgid "Set alarm"
msgstr "" msgstr ""
@@ -1000,9 +1055,6 @@ msgstr ""
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1078,17 +1130,6 @@ msgstr ""
msgid "Rename" msgid "Rename"
msgstr "" msgstr ""
msgid "Notebooks"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
@@ -1318,7 +1359,7 @@ msgid "WebDAV password"
msgstr "" msgstr ""
msgid "Attachment download behaviour" msgid "Attachment download behaviour"
msgstr "" msgstr "Attachment download behavior"
msgid "" msgid ""
"In \"Manual\" mode, attachments are downloaded only when you click on them. " "In \"Manual\" mode, attachments are downloaded only when you click on them. "
@@ -1356,6 +1397,12 @@ msgstr ""
msgid "Dark" msgid "Dark"
msgstr "" msgstr ""
msgid "Solarised Light"
msgstr "Solarized Light"
msgid "Solarised Dark"
msgstr "Solarized Dark"
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "" msgstr ""
@@ -1422,6 +1469,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1487,9 +1537,6 @@ msgid ""
"If none is provided it will try to auto-detect the default editor." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
msgid "Show advanced options"
msgstr ""
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1503,6 +1550,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "" msgstr ""
@@ -1603,9 +1655,8 @@ msgstr ""
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "" msgstr ""
#, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
msgstr "Items that cannot be synchronized" msgstr ""
msgid "" msgid ""
"Joplin failed to decrypt these items multiple times, possibly because they " "Joplin failed to decrypt these items multiple times, possibly because they "
@@ -1640,7 +1691,7 @@ msgid "%s: %d notes"
msgstr "" msgstr ""
msgid "Coming alarms" msgid "Coming alarms"
msgstr "" msgstr "Scheduled alarms"
#, javascript-format #, javascript-format
msgid "On %s: %s" msgid "On %s: %s"
@@ -1652,24 +1703,18 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
msgid "You currently have no notebooks."
msgstr ""
msgid "Create a notebook"
msgstr ""
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "" msgstr ""
msgid "Log"
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Configuration"
msgstr ""
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "" msgstr ""
@@ -1692,8 +1737,32 @@ msgstr ""
msgid "Confirm" msgid "Confirm"
msgstr "" msgstr ""
msgid "Cancel synchronisation" #, javascript-format
msgstr "Cancel synchronization" msgid "Notebook: %s"
msgstr ""
msgid "Encrypted notebooks cannot be renamed"
msgstr ""
msgid "New Notebook"
msgstr ""
msgid "Configuration"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "All notes"
msgstr ""
msgid "Notebooks"
msgstr ""
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "" msgstr ""
@@ -1733,6 +1802,46 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
msgid "Information"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Tools"
msgstr ""
msgid "Sync Status"
msgstr ""
msgid "Log"
msgstr ""
msgid "Creating report..."
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
msgid "More information" msgid "More information"
msgstr "" msgstr ""
@@ -1795,6 +1904,9 @@ msgstr ""
msgid "Edit notebook" msgid "Edit notebook"
msgstr "" msgstr ""
msgid "Enter notebook title"
msgstr ""
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1818,10 +1930,30 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Updated: %s"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr ""
msgid "Attach..."
msgstr ""
msgid "Choose an option"
msgstr ""
msgid "Take photo" msgid "Take photo"
msgstr "" msgstr ""
@@ -1840,22 +1972,16 @@ msgstr ""
msgid "Convert to todo" msgid "Convert to todo"
msgstr "" msgstr ""
msgid "Hide metadata" msgid "Properties"
msgstr "" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "" msgstr ""
msgid "Delete notebook" msgid "Add title"
msgstr "" msgstr ""
msgid "Login with OneDrive" msgid "Login with OneDrive"
@@ -1864,13 +1990,5 @@ msgstr ""
msgid "Search" msgid "Search"
msgstr "" msgstr ""
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Cancel synchronization"
"menu to access your existing notebooks."
msgstr ""
msgid "You currently have no notebook. Create one by clicking on (+) button."
msgstr ""
msgid "Welcome"
msgstr ""

View File

@@ -396,6 +396,23 @@ msgstr "¿Eliminar nota?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Buscar el patrón <pattern> en todas las notas." msgstr "Buscar el patrón <pattern> en todas las notas."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -533,6 +550,10 @@ msgstr "Escriba `joplin help` para mostrar información de uso."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Error fatal:" msgstr "Error fatal:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -632,6 +653,27 @@ msgstr "Opciones de cifrado"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Opciones de recorte web" msgstr "Opciones de recorte web"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Introduce fecha"
#, fuzzy
msgid "Open template directory"
msgstr "Directorio para exportar de Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -648,6 +690,9 @@ msgstr "Preferencias..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Comprobar actualizaciones..." msgstr "Comprobar actualizaciones..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importar" msgstr "Importar"
@@ -691,12 +736,18 @@ msgstr "Cursiva"
msgid "Link" msgid "Link"
msgstr "Enlace" msgstr "Enlace"
msgid "Code"
msgstr "Código"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Introduce fecha" msgstr "Introduce fecha"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Editar con un editor externo" msgstr "Editar con un editor externo"
msgid "Tags"
msgstr "Etiquetas"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Buscar en todas las notas" msgstr "Buscar en todas las notas"
@@ -724,6 +775,10 @@ msgstr "&Ayuda"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Sitio web y documentación" msgstr "Sitio web y documentación"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Hacer una donación" msgstr "Hacer una donación"
@@ -927,8 +982,8 @@ msgstr ""
"través de la sincronización." "través de la sincronización."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Para más información acerca del cifrado extremo a extremo (E2EE) y " "Para más información acerca del cifrado extremo a extremo (E2EE) y "
"advertencias de como habilitarlo por favor revise la documentación:" "advertencias de como habilitarlo por favor revise la documentación:"
@@ -971,6 +1026,9 @@ msgstr "Renombrar etiqueta:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Ajustar alarma:" msgstr "Ajustar alarma:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Diseño" msgstr "Diseño"
@@ -1008,6 +1066,9 @@ msgstr ""
"Historial\n" "Historial\n"
" de notas" " de notas"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Versiones anteriores de esta nota" msgstr "Versiones anteriores de esta nota"
@@ -1081,9 +1142,6 @@ msgstr "Insertar hipervínculo"
msgid "Attach file" msgid "Attach file"
msgstr "Adjuntar archivo" msgstr "Adjuntar archivo"
msgid "Tags"
msgstr "Etiquetas"
msgid "Set alarm" msgid "Set alarm"
msgstr "Establecer alarma" msgstr "Establecer alarma"
@@ -1094,9 +1152,6 @@ msgstr "En: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hipervínculo" msgstr "Hipervínculo"
msgid "Code"
msgstr "Código"
msgid "Numbered List" msgid "Numbered List"
msgstr "Lista numerada" msgstr "Lista numerada"
@@ -1175,17 +1230,6 @@ msgstr "Eliminar"
msgid "Rename" msgid "Rename"
msgstr "Renombrar" msgstr "Renombrar"
msgid "Notebooks"
msgstr "Libretas"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Descifrando elementos: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Obteniendo refuersos: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Seleccione a dónde se debería exportar el estado de sincronización" msgstr "Seleccione a dónde se debería exportar el estado de sincronización"
@@ -1472,6 +1516,12 @@ msgstr "Claro"
msgid "Dark" msgid "Dark"
msgstr "Oscuro" msgstr "Oscuro"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Mostrar tareas incompletas al inicio de las listas" msgstr "Mostrar tareas incompletas al inicio de las listas"
@@ -1538,6 +1588,10 @@ msgstr "Activar sintaxis ++insert++"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Activar extensión de tablas multimarkdown" msgstr "Activar extensión de tablas multimarkdown"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Activar sintaxis ~sub~"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Mostrar icono en la bandeja" msgstr "Mostrar icono en la bandeja"
@@ -1609,9 +1663,6 @@ msgstr ""
"una nota. Si no se provee ninguno se intentará auto detectar el editor por " "una nota. Si no se provee ninguno se intentará auto detectar el editor por "
"defecto." "defecto."
msgid "Show advanced options"
msgstr "Mostrar opciones avanzadas"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Certificados TLS personalizados" msgstr "Certificados TLS personalizados"
@@ -1630,6 +1681,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorar errores en certificados TLS" msgstr "Ignorar errores en certificados TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "Habilitar historial de notas" msgstr "Habilitar historial de notas"
@@ -1784,24 +1840,20 @@ msgstr "Permiso para usar tu cámara"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "El permiso para usar tu cámara es necesario." msgstr "El permiso para usar tu cámara es necesario."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Eliminar la nota o libreta seleccionada."
#, fuzzy
msgid "Create a notebook"
msgstr "Crea una nueva libreta."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "No hay notas. Cree una pulsando en el botón (+)." msgstr "No hay notas. Cree una pulsando en el botón (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "¿Desea borrar estas notas?" msgstr "¿Desea borrar estas notas?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Exportar informe de depuración"
msgid "Encryption Config"
msgstr "Configuración de cifrado"
msgid "Configuration"
msgstr "Configuración"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mover a la libreta..." msgstr "Mover a la libreta..."
@@ -1824,8 +1876,35 @@ msgstr "Seleccione fecha"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmar" msgstr "Confirmar"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Cancelar sincronización" msgid "Notebook: %s"
msgstr "Libretas"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Los elementos cifrados no pueden ser modificados"
#, fuzzy
msgid "New Notebook"
msgstr "Nueva libreta"
msgid "Configuration"
msgstr "Configuración"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Descifrando elementos: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Obteniendo refuersos: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "¿Desea eliminar notas?"
msgid "Notebooks"
msgstr "Libretas"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Comprobando... Por favor espere." msgstr "Comprobando... Por favor espere."
@@ -1867,6 +1946,50 @@ msgstr "Nuevas etiquetas:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Escriba nuevas etiquetas o seleccionelas de la lista" msgstr "Escriba nuevas etiquetas o seleccionelas de la lista"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Configuración"
msgid "Encryption Config"
msgstr "Configuración de cifrado"
#, fuzzy
msgid "Tools"
msgstr "&Herramientas"
#, fuzzy
msgid "Sync Status"
msgstr "Estado"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Creando nuevo %s..."
msgid "Export Debug Report"
msgstr "Exportar informe de depuración"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Configuración" msgstr "Configuración"
@@ -1935,6 +2058,10 @@ msgstr "No se ha podido guardar esta libreta: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Editar libreta" msgstr "Editar libreta"
#, fuzzy
msgid "Enter notebook title"
msgstr "Título de libreta:"
msgid "Show all" msgid "Show all"
msgstr "Mostrar todo" msgstr "Mostrar todo"
@@ -1959,10 +2086,32 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"La aplicación móvil de Joplin no soporta actualmente este tipo de enlace: %s" "La aplicación móvil de Joplin no soporta actualmente este tipo de enlace: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Tipo de imagen no soportado: %s" msgstr "Tipo de imagen no soportado: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Actualizado: %d."
msgid "View on map"
msgstr "Ver en un mapa"
msgid "Go to source URL"
msgstr "Ir a origen URL"
#, fuzzy
msgid "Attach..."
msgstr "Buscar..."
#, fuzzy
msgid "Choose an option"
msgstr "Mostrar opciones avanzadas"
msgid "Take photo" msgid "Take photo"
msgstr "Tomar foto" msgstr "Tomar foto"
@@ -1981,23 +2130,19 @@ msgstr "Convertir a nota"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Convertir a lista de tareas" msgstr "Convertir a lista de tareas"
msgid "Hide metadata" #, fuzzy
msgstr "Ocultar metadatos" msgid "Properties"
msgstr "Propiedades de nota"
msgid "Show metadata" msgid "Add body"
msgstr "Mostrar metadatos" msgstr ""
msgid "View on map"
msgstr "Ver en un mapa"
msgid "Go to source URL"
msgstr "Ir a origen URL"
msgid "Edit" msgid "Edit"
msgstr "Editar" msgstr "Editar"
msgid "Delete notebook" #, fuzzy
msgstr "Borrar libreta" msgid "Add title"
msgstr "título"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Acceder con OneDrive" msgstr "Acceder con OneDrive"
@@ -2005,19 +2150,36 @@ msgstr "Acceder con OneDrive"
msgid "Search" msgid "Search"
msgstr "Buscar" msgstr "Buscar"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Permiso para usar tu cámara"
msgstr ""
"Pulse en el botón (+) para crear una nueva nota o libreta. Pulse en el menú "
"lateral para acceder a las libretas existentes."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "Cancelar sincronización"
"No hay ninguna libreta. Cree una nueva libreta pulsando en el botón (+)."
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Bienvenido" #~ msgstr "Ocultar metadatos"
#~ msgid "Show metadata"
#~ msgstr "Mostrar metadatos"
#~ msgid "Delete notebook"
#~ msgstr "Borrar libreta"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Pulse en el botón (+) para crear una nueva nota o libreta. Pulse en el "
#~ "menú lateral para acceder a las libretas existentes."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "No hay ninguna libreta. Cree una nueva libreta pulsando en el botón (+)."
#~ msgid "Welcome"
#~ msgstr "Bienvenido"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separar cada etiqueta por una coma." #~ msgstr "Separar cada etiqueta por una coma."
@@ -2035,15 +2197,9 @@ msgstr "Bienvenido"
#~ "La ruta a la que sincronizar cuando se activa la sincronización con " #~ "La ruta a la que sincronizar cuando se activa la sincronización con "
#~ "sistema de archivos. Vea «sync.target»." #~ "sistema de archivos. Vea «sync.target»."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "Remove?" #~ msgid "Remove?"
#~ msgstr "¿Borrar?" #~ msgstr "¿Borrar?"
#~ msgid "Delete notes?"
#~ msgstr "¿Desea eliminar notas?"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Estado: «%s»." #~ msgstr "Estado: «%s»."
@@ -2103,9 +2259,6 @@ msgstr "Bienvenido"
#~ msgid "Cancel the current command." #~ msgid "Cancel the current command."
#~ msgstr "Cancelar el comando actual." #~ msgstr "Cancelar el comando actual."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Eliminar la nota o libreta seleccionada."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Marca una tarea como completada/no completada" #~ msgstr "Marca una tarea como completada/no completada"

View File

@@ -391,6 +391,23 @@ msgstr "Oharra ezabatu?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Emandako <pattern> bilatzen du ohar guztietan." msgstr "Emandako <pattern> bilatzen du ohar guztietan."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -529,6 +546,10 @@ msgstr "Erakutsi erabilera datuak."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Aio! Agur! :_( " msgstr "Aio! Agur! :_( "
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Aplikazioak baimena hartu du - Orain fitxa hau zarratu dezakezu." msgstr "Aplikazioak baimena hartu du - Orain fitxa hau zarratu dezakezu."
@@ -629,6 +650,25 @@ msgstr "Zifratzeko aukerak"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -646,6 +686,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Inportatu" msgstr "Inportatu"
@@ -692,12 +735,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Etiketak"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Bilatu ohar guztietan" msgstr "Bilatu ohar guztietan"
@@ -728,6 +777,10 @@ msgstr "Laguntza"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Web orria eta dokumentazioa (en)" msgstr "Web orria eta dokumentazioa (en)"
#, fuzzy
msgid "Joplin Forum"
msgstr "Evernotetik esportatutako fitxategiak"
#, fuzzy #, fuzzy
msgid "Make a donation" msgid "Make a donation"
msgstr "Web orria eta dokumentazioa (en)" msgstr "Web orria eta dokumentazioa (en)"
@@ -925,8 +978,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -971,6 +1024,9 @@ msgstr "Berrizendatu"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Ezarri alarma:" msgstr "Ezarri alarma:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Diseinua" msgstr "Diseinua"
@@ -1008,6 +1064,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Koadernoak" msgstr "Koadernoak"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1079,9 +1138,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Erantsi fitxategia" msgstr "Erantsi fitxategia"
msgid "Tags"
msgstr "Etiketak"
msgid "Set alarm" msgid "Set alarm"
msgstr "Ezarri alarma" msgstr "Ezarri alarma"
@@ -1092,9 +1148,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1175,17 +1228,6 @@ msgstr "Ezabatu"
msgid "Rename" msgid "Rename"
msgstr "Berrizendatu" msgstr "Berrizendatu"
msgid "Notebooks"
msgstr "Koadernoak"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Itemak eskuratuta: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Baliabideak: %d/%d"
#, fuzzy #, fuzzy
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Aukeratu nora esportatu sinkronizazioaren egoera, mesedez" msgstr "Aukeratu nora esportatu sinkronizazioaren egoera, mesedez"
@@ -1473,6 +1515,12 @@ msgstr "Argia"
msgid "Dark" msgid "Dark"
msgstr "Iluna" msgstr "Iluna"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
#, fuzzy #, fuzzy
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Bete gabeko zereginak erakutsi zerrendaren goiko partean" msgstr "Bete gabeko zereginak erakutsi zerrendaren goiko partean"
@@ -1546,6 +1594,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1614,9 +1665,6 @@ msgstr ""
"Editorea erabiliko da oharra zabaltzeko. Ez badago zehaztutakorik lehenetsia " "Editorea erabiliko da oharra zabaltzeko. Ez badago zehaztutakorik lehenetsia "
"igartzen ahaleginduko da." "igartzen ahaleginduko da."
msgid "Show advanced options"
msgstr "Erakutsi aukera aurreratuak"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1630,6 +1678,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Zifratua gaitu" msgstr "Zifratua gaitu"
@@ -1790,24 +1843,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ezabatu aukeratutako oharra edo koadernoa"
#, fuzzy
msgid "Create a notebook"
msgstr "Koaderno berria sortzen du."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Ez dago oharrik. Sortu bat (+) botoian klik eginaz." msgstr "Ez dago oharrik. Sortu bat (+) botoian klik eginaz."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Oharrok ezabatu?" msgstr "Oharrok ezabatu?"
msgid "Log"
msgstr "Egunkaria"
msgid "Export Debug Report"
msgstr "Esportatu arazketa txostena"
msgid "Encryption Config"
msgstr "Zifratze Ezarpenak"
msgid "Configuration"
msgstr "Konfigurazioa"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mugitu ... koadernora" msgstr "Mugitu ... koadernora"
@@ -1832,8 +1881,35 @@ msgstr "Data aukeratu"
msgid "Confirm" msgid "Confirm"
msgstr "Baieztatu" msgstr "Baieztatu"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Sinkronizazioa utzi" msgid "Notebook: %s"
msgstr "Koadernoak"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Zifratutako itemak ezin aldatu daitezke"
#, fuzzy
msgid "New Notebook"
msgstr "Koaderno berria"
msgid "Configuration"
msgstr "Konfigurazioa"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Itemak eskuratuta: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Baliabideak: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "Ohar berria"
msgid "Notebooks"
msgstr "Koadernoak"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1871,6 +1947,50 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Konfigurazioa"
msgid "Encryption Config"
msgstr "Zifratze Ezarpenak"
#, fuzzy
msgid "Tools"
msgstr "Tresnak"
#, fuzzy
msgid "Sync Status"
msgstr "Egoera"
msgid "Log"
msgstr "Egunkaria"
#, fuzzy
msgid "Creating report..."
msgstr "Oharrak inportatzen..."
msgid "Export Debug Report"
msgstr "Esportatu arazketa txostena"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Konfigurazioa" msgstr "Konfigurazioa"
@@ -1934,6 +2054,10 @@ msgstr "Koadernoa ezin gorde daiteke: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Editatu koadernoa" msgstr "Editatu koadernoa"
#, fuzzy
msgid "Enter notebook title"
msgstr "Koadernoaren izenburua: "
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1957,10 +2081,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Irudi formatua ez onartua: %s" msgstr "Irudi formatua ez onartua: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Eguneratuta: %d."
msgid "View on map"
msgstr "Ikusi mapan"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Bilatu"
#, fuzzy
msgid "Choose an option"
msgstr "Erakutsi aukera aurreratuak"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Argazkia erantsi" msgstr "Argazkia erantsi"
@@ -1980,23 +2126,18 @@ msgstr "Oharra bihurtu"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Zeregina bihurtu" msgstr "Zeregina bihurtu"
msgid "Hide metadata" msgid "Properties"
msgstr "Ezkutatu metadatuak" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Erakutsi metadatuak"
msgid "View on map"
msgstr "Ikusi mapan"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Editatu" msgstr "Editatu"
msgid "Delete notebook" #, fuzzy
msgstr "Ezabatu koadernoa" msgid "Add title"
msgstr "Titulu gabekoa"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Login with OneDrive" msgstr "Login with OneDrive"
@@ -2004,18 +2145,31 @@ msgstr "Login with OneDrive"
msgid "Search" msgid "Search"
msgstr "Bilatu" msgstr "Bilatu"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Sinkronizazioa utzi"
"menu to access your existing notebooks."
msgstr ""
"Sakatu (+) botoian ohar edo koaderno berria sortzeko. Klik alboko menuan "
"dagoeneko badiren koadernoak."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "Oraindik ez duzu koadernorik. Sortu bat (+) botoian sakatuta." #~ msgstr "Ezkutatu metadatuak"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Ongi etorri!" #~ msgstr "Erakutsi metadatuak"
#~ msgid "Delete notebook"
#~ msgstr "Ezabatu koadernoa"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Sakatu (+) botoian ohar edo koaderno berria sortzeko. Klik alboko menuan "
#~ "dagoeneko badiren koadernoak."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Oraindik ez duzu koadernorik. Sortu bat (+) botoian sakatuta."
#~ msgid "Welcome"
#~ msgstr "Ongi etorri!"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Banatu etiketak koma erabiliaz." #~ msgstr "Banatu etiketak koma erabiliaz."
@@ -2083,9 +2237,6 @@ msgstr "Ongi etorri!"
#~ msgid "Cancel the current command." #~ msgid "Cancel the current command."
#~ msgstr "Utzi uneko komandoa" #~ msgstr "Utzi uneko komandoa"
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Ezabatu aukeratutako oharra edo koadernoa"
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Zeregina eginda / ez-eginda markatu" #~ msgstr "Zeregina eginda / ez-eginda markatu"

View File

@@ -356,6 +356,23 @@ msgstr "پاک کردن یادداشت؟"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "" msgstr ""
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -475,6 +492,10 @@ msgstr ""
msgid "Fatal error:" msgid "Fatal error:"
msgstr "" msgstr ""
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -557,6 +578,27 @@ msgstr "تنظیمات رمزنگاری"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "وارد کردن تاریخ و ساعت"
#, fuzzy
msgid "Open template directory"
msgstr "فولدر خروجی Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s، %s)" msgstr "%s %s (%s، %s)"
@@ -573,6 +615,9 @@ msgstr "تنظیمات..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "بارگذاری" msgstr "بارگذاری"
@@ -617,12 +662,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "لینک" msgstr "لینک"
msgid "Code"
msgstr "کد"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "وارد کردن تاریخ و ساعت" msgstr "وارد کردن تاریخ و ساعت"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "تنظیم ویرایشگر خارجی" msgstr "تنظیم ویرایشگر خارجی"
msgid "Tags"
msgstr "برچسب‌ها"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "جستجو در تمام یادداشت ها" msgstr "جستجو در تمام یادداشت ها"
@@ -650,6 +701,10 @@ msgstr "&کمک"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "" msgstr ""
#, fuzzy
msgid "Joplin Forum"
msgstr "فایل خروجی Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "" msgstr ""
@@ -832,8 +887,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -874,6 +929,9 @@ msgstr "تغییر نام برچسب:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "" msgstr ""
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "" msgstr ""
@@ -911,6 +969,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "تاریخچه ی یادداشت" msgstr "تاریخچه ی یادداشت"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -981,9 +1042,6 @@ msgstr "وارد کردن لینک"
msgid "Attach file" msgid "Attach file"
msgstr "پیوست فایل" msgstr "پیوست فایل"
msgid "Tags"
msgstr "برچسب‌ها"
msgid "Set alarm" msgid "Set alarm"
msgstr "" msgstr ""
@@ -994,9 +1052,6 @@ msgstr "در: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "لینک" msgstr "لینک"
msgid "Code"
msgstr "کد"
#, fuzzy #, fuzzy
msgid "Numbered List" msgid "Numbered List"
msgstr "لیست ترتیبی" msgstr "لیست ترتیبی"
@@ -1077,17 +1132,6 @@ msgstr "پاک کردن"
msgid "Rename" msgid "Rename"
msgstr "تغییر نام" msgstr "تغییر نام"
msgid "Notebooks"
msgstr "دفترچه ها"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "آیتم های دریافت شده: %d از %d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
@@ -1353,6 +1397,12 @@ msgstr "روشن"
msgid "Dark" msgid "Dark"
msgstr "تیره" msgstr "تیره"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "" msgstr ""
@@ -1419,6 +1469,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1482,9 +1535,6 @@ msgid ""
"If none is provided it will try to auto-detect the default editor." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
msgid "Show advanced options"
msgstr "نمایش گزینه های پیشرفته"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1498,6 +1548,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "فعال سایز ثبت تاریخچه ی یادداشت" msgstr "فعال سایز ثبت تاریخچه ی یادداشت"
@@ -1646,24 +1701,20 @@ msgstr "اجازه برای استفاده از دوربین"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "اجازه ی شما برای استفاده از دوربین شما نیاز است." msgstr "اجازه ی شما برای استفاده از دوربین شما نیاز است."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "دفترچه‌ی فعالی وجود ندارد."
#, fuzzy
msgid "Create a notebook"
msgstr "ایجاد دفترچه جدید."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "این یادداشت ها پاک شوند؟" msgstr "این یادداشت ها پاک شوند؟"
msgid "Log"
msgstr "لاگ"
msgid "Export Debug Report"
msgstr ""
msgid "Encryption Config"
msgstr "تنظیمات رمزنگاری"
msgid "Configuration"
msgstr "تنظیمات"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "انتقال به دفترچه..." msgstr "انتقال به دفترچه..."
@@ -1686,9 +1737,34 @@ msgstr "انتخاب تاریخ"
msgid "Confirm" msgid "Confirm"
msgstr "تایید" msgstr "تایید"
#, fuzzy, javascript-format
msgid "Notebook: %s"
msgstr "دفترچه ها"
msgid "Encrypted notebooks cannot be renamed"
msgstr ""
#, fuzzy #, fuzzy
msgid "Cancel synchronisation" msgid "New Notebook"
msgstr "لغو سینک" msgstr "دفترچه جدید"
msgid "Configuration"
msgstr "تنظیمات"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "آیتم های دریافت شده: %d از %d"
#, fuzzy
msgid "All notes"
msgstr "یادداشت"
msgid "Notebooks"
msgstr "دفترچه ها"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1724,6 +1800,50 @@ msgstr "برچسب جدید:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "تنظیمات"
msgid "Encryption Config"
msgstr "تنظیمات رمزنگاری"
#, fuzzy
msgid "Tools"
msgstr "&ابزارها"
#, fuzzy
msgid "Sync Status"
msgstr "وضعیت"
msgid "Log"
msgstr "لاگ"
#, fuzzy
msgid "Creating report..."
msgstr "بارگذاری یادداشت‌ها..."
msgid "Export Debug Report"
msgstr ""
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "تنظیمات" msgstr "تنظیمات"
@@ -1785,6 +1905,10 @@ msgstr ""
msgid "Edit notebook" msgid "Edit notebook"
msgstr "ویرایش دفترچه" msgstr "ویرایش دفترچه"
#, fuzzy
msgid "Enter notebook title"
msgstr "موضوع دفترچه:"
msgid "Show all" msgid "Show all"
msgstr "نمایش همه" msgstr "نمایش همه"
@@ -1808,10 +1932,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "" msgstr ""
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "به‌روز شده: %d."
msgid "View on map"
msgstr "نمایش بر روی نقشه"
msgid "Go to source URL"
msgstr "رفتن به آدرس منبع"
#, fuzzy
msgid "Attach..."
msgstr "جستجو..."
#, fuzzy
msgid "Choose an option"
msgstr "نمایش گزینه های پیشرفته"
msgid "Take photo" msgid "Take photo"
msgstr "گرفتن عکس" msgstr "گرفتن عکس"
@@ -1831,24 +1977,18 @@ msgid "Convert to todo"
msgstr "تبدیل به فهرست کارها" msgstr "تبدیل به فهرست کارها"
#, fuzzy #, fuzzy
msgid "Hide metadata" msgid "Properties"
msgstr "پنهان کردن متادیتا" msgstr "جزییات یادداشت"
#, fuzzy msgid "Add body"
msgid "Show metadata" msgstr ""
msgstr "نمایش متادیتا"
msgid "View on map"
msgstr "نمایش بر روی نقشه"
msgid "Go to source URL"
msgstr "رفتن به آدرس منبع"
msgid "Edit" msgid "Edit"
msgstr "ویرایش" msgstr "ویرایش"
msgid "Delete notebook" #, fuzzy
msgstr "پاک کردن دفترچه" msgid "Add title"
msgstr "موضوع"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "ورود با OneDrive" msgstr "ورود با OneDrive"
@@ -1856,18 +1996,33 @@ msgstr "ورود با OneDrive"
msgid "Search" msgid "Search"
msgstr "جستجو" msgstr "جستجو"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "اجازه برای استفاده از دوربین"
msgstr ""
msgid "You currently have no notebook. Create one by clicking on (+) button." #, fuzzy
msgstr "" #~ msgid "Cancel synchronisation"
"شما هیچ دفترچه ای ندارید. با کلیک کردن بر روی (+) یک دفترچه ی جدید ایجاد " #~ msgstr "لغو سینک"
"کنید."
msgid "Welcome" #, fuzzy
msgstr "خوش آمدید" #~ msgid "Hide metadata"
#~ msgstr "پنهان کردن متادیتا"
#, fuzzy
#~ msgid "Show metadata"
#~ msgstr "نمایش متادیتا"
#~ msgid "Delete notebook"
#~ msgstr "پاک کردن دفترچه"
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "شما هیچ دفترچه ای ندارید. با کلیک کردن بر روی (+) یک دفترچه ی جدید ایجاد "
#~ "کنید."
#~ msgid "Welcome"
#~ msgstr "خوش آمدید"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "هر برچسب را با ویرگول شده کنید." #~ msgstr "هر برچسب را با ویرگول شده کنید."

View File

@@ -13,7 +13,9 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.3\n" "X-Generator: Poedit 2.2.1\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
msgid "To delete a tag, untag the associated notes." msgid "To delete a tag, untag the associated notes."
msgstr "Pour supprimer une vignette, enlever là des notes associées." msgstr "Pour supprimer une vignette, enlever là des notes associées."
@@ -389,6 +391,26 @@ msgstr "Supprimer la note ?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Chercher le motif <pattern> dans toutes les notes." msgstr "Chercher le motif <pattern> dans toutes les notes."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
"Démarre, stop ou vérifie l'état du serveur API. Pour spécifier sur quel port "
"il doit tourner, veuillez utiliser la variable de config api.port. Les "
"commandes sont (%s)."
#, javascript-format
msgid "Server is already running on port %d"
msgstr "Le serveur tourne déjà sur le port %d"
#, javascript-format
msgid "Server is running on port %d"
msgstr "Le serveur tourne sur le port %d"
msgid "Server is not running."
msgstr "Le serveur est arrêté."
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -530,6 +552,12 @@ msgstr "Tapez `Joplin help` pour afficher l'aide."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Erreur fatale :" msgstr "Erreur fatale :"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
"Tous les ports sont en cours d'utilisation. Veuillez signaler ce problème "
"sur %s"
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Le logiciel a été autorisé. Vous pouvez maintenant fermer cet onglet." msgstr "Le logiciel a été autorisé. Vous pouvez maintenant fermer cet onglet."
@@ -627,6 +655,25 @@ msgstr "Options de chiffrement"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Options du Web Clipper" msgstr "Options du Web Clipper"
msgid "Create note from template"
msgstr "Créer une note à partir d'un modèle"
msgid "Create to-do from template"
msgstr "Créer une tâche à partir d'un modèle"
msgid "Insert template"
msgstr "Insérer un modèle"
msgid "Open template directory"
msgstr "Ouvrir le dossier des modèles"
msgid "Refresh templates"
msgstr "Rafraichir modèles"
#, javascript-format
msgid "Revision: %s (%s)"
msgstr "Révision : %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -643,6 +690,9 @@ msgstr "Préférences…"
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Vérifier les mises à jour..." msgstr "Vérifier les mises à jour..."
msgid "Templates"
msgstr "Modèles"
msgid "Import" msgid "Import"
msgstr "Importer" msgstr "Importer"
@@ -686,12 +736,18 @@ msgstr "Italique"
msgid "Link" msgid "Link"
msgstr "Lien" msgstr "Lien"
msgid "Code"
msgstr "Code"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Insérer la date et l'heure" msgstr "Insérer la date et l'heure"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Ouvrir dans un éditeur externe" msgstr "Ouvrir dans un éditeur externe"
msgid "Tags"
msgstr "Étiquettes"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Chercher dans toutes les notes" msgstr "Chercher dans toutes les notes"
@@ -719,6 +775,9 @@ msgstr "&Aide"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Documentation en ligne" msgstr "Documentation en ligne"
msgid "Joplin Forum"
msgstr "Forum Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "Faire un don" msgstr "Faire un don"
@@ -925,8 +984,8 @@ msgstr ""
"probable qu'elle vont être prochainement disponible via la synchronisation." "probable qu'elle vont être prochainement disponible via la synchronisation."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Pour plus d'informations sur le chiffrement 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 :" "conseils pour l'activer, veuillez consulter la documentation :"
@@ -971,6 +1030,9 @@ msgstr "Renommer étiquette :"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Régler alarme :" msgstr "Régler alarme :"
msgid "Template file:"
msgstr "Fichier de modèle :"
msgid "Layout" msgid "Layout"
msgstr "Disposition" msgstr "Disposition"
@@ -984,7 +1046,7 @@ msgid "View them now"
msgstr "Les voir maintenant" msgstr "Les voir maintenant"
msgid "One or more master keys need a password." msgid "One or more master keys need a password."
msgstr "L'une des clefs maîtres requiert un mot de passe :" msgstr "L'une des clefs maîtres requiert un mot de passe."
msgid "Set the password" msgid "Set the password"
msgstr "Définir le mot de passe" msgstr "Définir le mot de passe"
@@ -1008,6 +1070,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Historique des notes" msgstr "Historique des notes"
msgid "Markup"
msgstr "Langage de balisage"
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Versions précédentes de cette note" msgstr "Versions précédentes de cette note"
@@ -1084,9 +1149,6 @@ msgstr "Insérer lien"
msgid "Attach file" msgid "Attach file"
msgstr "Attacher un fichier" msgstr "Attacher un fichier"
msgid "Tags"
msgstr "Étiquettes"
msgid "Set alarm" msgid "Set alarm"
msgstr "Régler alarme" msgstr "Régler alarme"
@@ -1097,9 +1159,6 @@ msgstr "Dans : %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Lien" msgstr "Lien"
msgid "Code"
msgstr "Code"
msgid "Numbered List" msgid "Numbered List"
msgstr "Liste numérotée" msgstr "Liste numérotée"
@@ -1178,17 +1237,6 @@ msgstr "Supprimer"
msgid "Rename" msgid "Rename"
msgstr "Renommer" msgstr "Renommer"
msgid "Notebooks"
msgstr "Carnets"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Déchiffrement des objets : %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Tél. ressources : %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
"Veuillez sélectionner un répertoire ou exporter l'état de la synchronisation" "Veuillez sélectionner un répertoire ou exporter l'état de la synchronisation"
@@ -1439,9 +1487,9 @@ msgid ""
"the attachments are downloaded whether you open the note or not." "the attachments are downloaded whether you open the note or not."
msgstr "" msgstr ""
"En mode \"manuel\", les ressources sont téléchargées uniquement lorsque vous " "En mode \"manuel\", les ressources sont téléchargées uniquement lorsque vous "
"cliquez dessus. En mode \"auto\", elle sont téléchargée lorsque vous ouvrez " "cliquez dessus. En mode \"auto\", elles sont téléchargées lorsque vous "
"la note. En mode \"toujours\", toutes les ressources sont téléchargées, que " "ouvrez la note. En mode \"toujours\", toutes les ressources sont "
"vous ayez ouvert la note ou pas." "téléchargées, que vous ayez ouvert la note ou pas."
msgid "Always" msgid "Always"
msgstr "Toujours" msgstr "Toujours"
@@ -1473,6 +1521,12 @@ msgstr "Clair"
msgid "Dark" msgid "Dark"
msgstr "Sombre" msgstr "Sombre"
msgid "Solarised Light"
msgstr "Solarisé clair"
msgid "Solarised Dark"
msgstr "Solarisé sombre"
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Tâches non-terminées en haut" msgstr "Tâches non-terminées en haut"
@@ -1539,6 +1593,9 @@ msgstr "Activer la syntaxe ++insertion++"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Activer les tables multi-markdown" msgstr "Activer les tables multi-markdown"
msgid "Enable Fountain syntax support"
msgstr "Activer la syntaxe \"Fountain\""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Afficher l'icône dans la zone de notifications" msgstr "Afficher l'icône dans la zone de notifications"
@@ -1609,9 +1666,6 @@ msgstr ""
"La commande de l'éditeur de texte (peut inclure des options) pour ouvrir et " "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." "modifier les notes. Si non-spécifiée, elle sera détectée automatiquement."
msgid "Show advanced options"
msgstr "Montrer les options avancées"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Certificats TLS personnalisés" msgstr "Certificats TLS personnalisés"
@@ -1630,6 +1684,13 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorer les erreurs de certificats TLS" msgstr "Ignorer les erreurs de certificats TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
"Détermine quel port sera utilisé par le serveur API. Si aucun n'est "
"spécifié, un port par défaut sera utilisé."
msgid "Enable note history" msgid "Enable note history"
msgstr "Activer l'historique des notes" msgstr "Activer l'historique des notes"
@@ -1786,6 +1847,12 @@ msgstr "Permission d'utiliser l'appareil photo"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Votre permission est requise pour utiliser l'appareil photo." msgstr "Votre permission est requise pour utiliser l'appareil photo."
msgid "You currently have no notebooks."
msgstr "Vous n'avez pour l'instant pas de carnets."
msgid "Create a notebook"
msgstr "Créer un carnet"
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
"Ce carnet ne contient aucune note. Créez-en une en appuyant sur le bouton " "Ce carnet ne contient aucune note. Créez-en une en appuyant sur le bouton "
@@ -1794,18 +1861,6 @@ msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Supprimer ces notes ?" msgstr "Supprimer ces notes ?"
msgid "Log"
msgstr "Journal"
msgid "Export Debug Report"
msgstr "Exporter rapport de débogage"
msgid "Encryption Config"
msgstr "Config chiffrement"
msgid "Configuration"
msgstr "Configuration"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Déplacer vers..." msgstr "Déplacer vers..."
@@ -1828,8 +1883,32 @@ msgstr "Sélectionner date"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmer" msgstr "Confirmer"
msgid "Cancel synchronisation" #, javascript-format
msgstr "Annuler synchronisation" msgid "Notebook: %s"
msgstr "Carnet : %s"
msgid "Encrypted notebooks cannot be renamed"
msgstr "Les carnets chiffrés ne peuvent être renommés"
msgid "New Notebook"
msgstr "Nouveau carnet"
msgid "Configuration"
msgstr "Configuration"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Déchiffrement des objets : %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Tél. ressources : %d/%d"
msgid "All notes"
msgstr "Toutes les notes"
msgid "Notebooks"
msgstr "Carnets"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Vérification... Veuillez attendre." msgstr "Vérification... Veuillez attendre."
@@ -1871,6 +1950,50 @@ msgstr "Nouvelles étiquettes :"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Entrez de nouvelles étiquettes ou sélectionnez de la liste" msgstr "Entrez de nouvelles étiquettes ou sélectionnez de la liste"
msgid "Warning"
msgstr "Avertissement"
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
"Pour utiliser la synchronisation par système de fichiers, votre autorisation "
"pour écrire sur le stockage externe est requise."
msgid "Information"
msgstr "Information"
msgid "Encryption Config"
msgstr "Config chiffrement"
msgid "Tools"
msgstr "Outils"
msgid "Sync Status"
msgstr "État synchronisation"
msgid "Log"
msgstr "Journal"
msgid "Creating report..."
msgstr "Création du rapport..."
msgid "Export Debug Report"
msgstr "Exporter rapport de débogage"
msgid "Fixing search index..."
msgstr "Correction de l'index..."
msgid "Fix search index"
msgstr "Corriger index de recherche"
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
"Utilisez ceci pour corriger l'index du moteur de recherche en cas de "
"problème. Cela peut prendre longtemps selon le nombre de notes."
msgid "More information" msgid "More information"
msgstr "Plus d'information" msgstr "Plus d'information"
@@ -1937,6 +2060,9 @@ msgstr "Ce carnet n'a pas pu être sauvegardé : %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Éditer le carnet" msgstr "Éditer le carnet"
msgid "Enter notebook title"
msgstr "Entrez le titre du carnet"
msgid "Show all" msgid "Show all"
msgstr "Afficher tous" msgstr "Afficher tous"
@@ -1961,10 +2087,30 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"L'application mobile Joplin ne gère pas pour l'instant ce type de lien : %s" "L'application mobile Joplin ne gère pas pour l'instant ce type de lien : %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "Le schéma d'URI \"%s\" n'est pas supporté"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Type d'image non géré : %s" msgstr "Type d'image non géré : %s"
#, javascript-format
msgid "Updated: %s"
msgstr "Mis à jour : %s"
msgid "View on map"
msgstr "Voir sur carte"
msgid "Go to source URL"
msgstr "Aller à l'URL source"
msgid "Attach..."
msgstr "Joindre..."
msgid "Choose an option"
msgstr "Choisissez une option"
msgid "Take photo" msgid "Take photo"
msgstr "Prendre une photo" msgstr "Prendre une photo"
@@ -1983,23 +2129,17 @@ msgstr "Convertir en note"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Convertir en tâche" msgstr "Convertir en tâche"
msgid "Hide metadata" msgid "Properties"
msgstr "Cacher les métadonnées" msgstr "Propriétés"
msgid "Show metadata" msgid "Add body"
msgstr "Voir métadonnées" msgstr "Ajoutez le contenu"
msgid "View on map"
msgstr "Voir sur carte"
msgid "Go to source URL"
msgstr "Aller à l'URL source"
msgid "Edit" msgid "Edit"
msgstr "Édition" msgstr "Édition"
msgid "Delete notebook" msgid "Add title"
msgstr "Supprimer le carnet" msgstr "Ajoutez le titre"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Se connecter à OneDrive" msgstr "Se connecter à OneDrive"
@@ -2007,20 +2147,43 @@ msgstr "Se connecter à OneDrive"
msgid "Search" msgid "Search"
msgstr "Chercher" msgstr "Chercher"
msgid "" #~ msgid ""
"Click on the (+) button to create a new note or notebook. Click on the side " #~ "Joplin does not have permission to access \"%s\". Either choose a "
"menu to access your existing notebooks." #~ "different sync target, or give Joplin the \"Storage\" permission."
msgstr "" #~ msgstr ""
"Appuyez sur le bouton (+) pour créer une nouvelle note ou carnet. Ouvrez le " #~ "Joplin ne peut pas accéder au dossier \"%s\". Choisissez une autre cible "
"menu latéral pour accéder à vos carnets." #~ "de synchronisation, ou donnez à Joplin l'autorisation \"Stockage\"."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Permission to write to external storage"
msgstr "" #~ msgstr "Autorisation d'écrire sur le stockage externe"
"Vous n'avez pour l'instant pas de carnets. Créez-en un en pressant le bouton "
"(+)."
msgid "Welcome" #~ msgid "Cancel synchronisation"
msgstr "Bienvenue" #~ msgstr "Annuler synchronisation"
#~ msgid "Hide metadata"
#~ msgstr "Cacher les métadonnées"
#~ msgid "Show metadata"
#~ msgstr "Voir métadonnées"
#~ msgid "Delete notebook"
#~ msgstr "Supprimer le carnet"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Appuyez sur le bouton (+) pour créer une nouvelle note ou carnet. Ouvrez "
#~ "le menu latéral pour accéder à vos carnets."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Vous n'avez pour l'instant pas de carnets. Créez-en un en pressant le "
#~ "bouton (+)."
#~ msgid "Welcome"
#~ msgstr "Bienvenue"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Séparez chaque étiquette par une virgule." #~ msgstr "Séparez chaque étiquette par une virgule."
@@ -2041,15 +2204,9 @@ msgstr "Bienvenue"
#~ "Le chemin du répertoire avec lequel synchroniser lorsque la " #~ "Le chemin du répertoire avec lequel synchroniser lorsque la "
#~ "synchronisation par système de fichier est activée. Voir `sync.target`." #~ "synchronisation par système de fichier est activée. Voir `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "Remove?" #~ msgid "Remove?"
#~ msgstr "Supprimer ?" #~ msgstr "Supprimer ?"
#~ msgid "Delete notes?"
#~ msgstr "Supprimer les notes ?"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "État : %s." #~ msgstr "État : %s."
@@ -2112,9 +2269,6 @@ msgstr "Bienvenue"
#~ msgid "Exit the application." #~ msgid "Exit the application."
#~ msgstr "Quitter le logiciel." #~ msgstr "Quitter le logiciel."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Supprimer la note ou carnet sélectionné."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Marquer une tâches comme complétée / non-complétée" #~ msgstr "Marquer une tâches comme complétée / non-complétée"
@@ -2328,11 +2482,6 @@ msgstr "Bienvenue"
#~ msgid "use <notebook>" #~ msgid "use <notebook>"
#~ msgstr "Nouveau carnet" #~ msgstr "Nouveau carnet"
#~ msgid "All potential ports are in use - please report the issue at %s"
#~ msgstr ""
#~ "Tous les ports sont en cours d'utilisation. Veuillez signaler ce problème "
#~ "sur %s"
#~ msgid "Synchronizing with directory \"%s\"" #~ msgid "Synchronizing with directory \"%s\""
#~ msgstr "Synchronisation avec dossier \"%s\"" #~ msgstr "Synchronisation avec dossier \"%s\""

View File

@@ -388,6 +388,23 @@ msgstr "Eliminar nota?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Busca o patrón <pattern> en todas as notas." msgstr "Busca o patrón <pattern> en todas as notas."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -524,6 +541,10 @@ msgstr "Escriba «joplin help» para obter información do uso."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Erro fatal:" msgstr "Erro fatal:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "O aplicativo foi autorizado. Xa pode pechar esta lapela do navegador." msgstr "O aplicativo foi autorizado. Xa pode pechar esta lapela do navegador."
@@ -622,6 +643,26 @@ msgstr "Opcións de cifrado"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
#, fuzzy
msgid "Open template directory"
msgstr "Cartafol de exportación do Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -639,6 +680,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Buscar actualizacións…" msgstr "Buscar actualizacións…"
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importar" msgstr "Importar"
@@ -684,12 +728,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Etiquetas"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Buscar en todas as notas" msgstr "Buscar en todas as notas"
@@ -722,6 +772,10 @@ msgstr "Axuda"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Sitio web e documentación" msgstr "Sitio web e documentación"
#, fuzzy
msgid "Joplin Forum"
msgstr "Sitio web de Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "Doar" msgstr "Doar"
@@ -917,8 +971,8 @@ msgstr ""
"descargados pola sincronización." "descargados pola sincronización."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -961,6 +1015,9 @@ msgstr "Renomear"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Estabelecer alarma:" msgstr "Estabelecer alarma:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Disposición" msgstr "Disposición"
@@ -997,6 +1054,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Cadernos" msgstr "Cadernos"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1069,9 +1129,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Anexar un ficheiro" msgstr "Anexar un ficheiro"
msgid "Tags"
msgstr "Etiquetas"
msgid "Set alarm" msgid "Set alarm"
msgstr "Estabelecer alarma" msgstr "Estabelecer alarma"
@@ -1082,9 +1139,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1163,17 +1217,6 @@ msgstr "Eliminar"
msgid "Rename" msgid "Rename"
msgstr "Renomear" msgstr "Renomear"
msgid "Notebooks"
msgstr "Cadernos"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Elementos obtidos: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Recursos: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Seleccione onde exportar o estado da sincronización" msgstr "Seleccione onde exportar o estado da sincronización"
@@ -1455,6 +1498,12 @@ msgstr "Claro"
msgid "Dark" msgid "Dark"
msgstr "Escuro" msgstr "Escuro"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Tarefas sen completar arriba" msgstr "Tarefas sen completar arriba"
@@ -1524,6 +1573,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Mostrar a icona na bandexa" msgstr "Mostrar a icona na bandexa"
@@ -1594,9 +1646,6 @@ msgstr ""
"Editor a usar para abrir unha nota. Se non se indica ningún tentará detectar " "Editor a usar para abrir unha nota. Se non se indica ningún tentará detectar "
"automaticamente o editor predeterminado." "automaticamente o editor predeterminado."
msgid "Show advanced options"
msgstr "Mostrar opcións avanzadas"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1610,6 +1659,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Activar cifrado" msgstr "Activar cifrado"
@@ -1770,24 +1824,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ningún caderno activo."
#, fuzzy
msgid "Create a notebook"
msgstr "Crea un caderno novo."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Non ten notas actualmente. Cree unha premendo no botón (+)." msgstr "Non ten notas actualmente. Cree unha premendo no botón (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Desexa eliminar estas notas?" msgstr "Desexa eliminar estas notas?"
msgid "Log"
msgstr "Rexistro"
msgid "Export Debug Report"
msgstr "Exportar informe de depuración"
msgid "Encryption Config"
msgstr "Configuración de cifrado"
msgid "Configuration"
msgstr "Configuración"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mover para o caderno..." msgstr "Mover para o caderno..."
@@ -1812,8 +1862,35 @@ msgstr "Seleccionar data"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmar" msgstr "Confirmar"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Cancelar sincronización" msgid "Notebook: %s"
msgstr "Cadernos"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Non é posíbel modificar elementos cifrados"
#, fuzzy
msgid "New Notebook"
msgstr "Novo caderno"
msgid "Configuration"
msgstr "Configuración"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Elementos obtidos: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Recursos: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "nota"
msgid "Notebooks"
msgstr "Cadernos"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1851,6 +1928,50 @@ msgstr "Etiquetas novas:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Escriba etiquetas novas ou seleccione da lista" msgstr "Escriba etiquetas novas ou seleccione da lista"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Configuración"
msgid "Encryption Config"
msgstr "Configuración de cifrado"
#, fuzzy
msgid "Tools"
msgstr "Ferramentas"
#, fuzzy
msgid "Sync Status"
msgstr "Estado"
msgid "Log"
msgstr "Rexistro"
#, fuzzy
msgid "Creating report..."
msgstr "Criando novo %s..."
msgid "Export Debug Report"
msgstr "Exportar informe de depuración"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Configuración" msgstr "Configuración"
@@ -1913,6 +2034,10 @@ msgstr "Non foi posíbel gardar o caderno: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Editar caderno" msgstr "Editar caderno"
#, fuzzy
msgid "Enter notebook title"
msgstr "Título do caderno:"
msgid "Show all" msgid "Show all"
msgstr "Mostrar todo" msgstr "Mostrar todo"
@@ -1936,10 +2061,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Tipo de imaxe incompatíbel: %s" msgstr "Tipo de imaxe incompatíbel: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Actualizado: %d."
msgid "View on map"
msgstr "Ver no mapa"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Buscar…"
#, fuzzy
msgid "Choose an option"
msgstr "Mostrar opcións avanzadas"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Anexar foto" msgstr "Anexar foto"
@@ -1959,23 +2106,18 @@ msgstr "Converter para nota"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Converter para tarefa" msgstr "Converter para tarefa"
msgid "Hide metadata" msgid "Properties"
msgstr "Ocultar metadados" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Mostrar metadatos"
msgid "View on map"
msgstr "Ver no mapa"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Edtar" msgstr "Edtar"
msgid "Delete notebook" #, fuzzy
msgstr "Eliminar caderno" msgid "Add title"
msgstr "Sen título"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Acceder con OneDrive" msgstr "Acceder con OneDrive"
@@ -1983,18 +2125,31 @@ msgstr "Acceder con OneDrive"
msgid "Search" msgid "Search"
msgstr "Buscar" msgstr "Buscar"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Cancelar sincronización"
"menu to access your existing notebooks."
msgstr ""
"Prema no botón (+) para crear unha nota ou caderno. Prema no menú lateral "
"para acceder aos cadernos existentes."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "Non ten cadernos actualmente. Cree un premendo no botón (+)." #~ msgstr "Ocultar metadados"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Benvido/a" #~ msgstr "Mostrar metadatos"
#~ msgid "Delete notebook"
#~ msgstr "Eliminar caderno"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Prema no botón (+) para crear unha nota ou caderno. Prema no menú lateral "
#~ "para acceder aos cadernos existentes."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Non ten cadernos actualmente. Cree un premendo no botón (+)."
#~ msgid "Welcome"
#~ msgstr "Benvido/a"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separar cada etiqueta por unha coma." #~ msgstr "Separar cada etiqueta por unha coma."
@@ -2012,10 +2167,6 @@ msgstr "Benvido/a"
#~ "Ruta para sincronizar cando estea activada a sincronización do sistema de " #~ "Ruta para sincronizar cando estea activada a sincronización do sistema de "
#~ "ficheiros. Vexa «sync.target»." #~ "ficheiros. Vexa «sync.target»."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Sitio web de Joplin"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Estado: %s." #~ msgstr "Estado: %s."

View File

@@ -393,6 +393,23 @@ msgstr "Obrisati bilješku?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Pretražuje dati <pattern> u svim bilješkama." msgstr "Pretražuje dati <pattern> u svim bilješkama."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, fuzzy, javascript-format #, fuzzy, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -530,6 +547,10 @@ msgstr "Prikazuje informacije o korištenju."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Fatalna greška:" msgstr "Fatalna greška:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Aplikacija je autorizirana - smiješ zatvoriti karticu preglednika." msgstr "Aplikacija je autorizirana - smiješ zatvoriti karticu preglednika."
@@ -626,6 +647,25 @@ msgstr ""
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -643,6 +683,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Uvoz" msgstr "Uvoz"
@@ -689,12 +732,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Oznake"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Pretraži u svim bilješkama" msgstr "Pretraži u svim bilješkama"
@@ -726,6 +775,10 @@ msgstr "Pomoć"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Website i dokumentacija" msgstr "Website i dokumentacija"
#, fuzzy
msgid "Joplin Forum"
msgstr "Evernote izvozne datoteke"
#, fuzzy #, fuzzy
msgid "Make a donation" msgid "Make a donation"
msgstr "Website i dokumentacija" msgstr "Website i dokumentacija"
@@ -911,8 +964,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -957,6 +1010,9 @@ msgstr "Preimenuj"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Postavi upozorenje:" msgstr "Postavi upozorenje:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Izgled" msgstr "Izgled"
@@ -993,6 +1049,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Bilježnice" msgstr "Bilježnice"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1064,9 +1123,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Priloži datoteku" msgstr "Priloži datoteku"
msgid "Tags"
msgstr "Oznake"
msgid "Set alarm" msgid "Set alarm"
msgstr "Postavi upozorenje" msgstr "Postavi upozorenje"
@@ -1077,9 +1133,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1160,17 +1213,6 @@ msgstr "Obriši"
msgid "Rename" msgid "Rename"
msgstr "Preimenuj" msgstr "Preimenuj"
msgid "Notebooks"
msgstr "Bilježnice"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Stvorene lokalne stavke: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Resursi: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Odaberi lokaciju za izvoz statusa sinkronizacije" msgstr "Odaberi lokaciju za izvoz statusa sinkronizacije"
@@ -1448,6 +1490,12 @@ msgstr "Svijetla"
msgid "Dark" msgid "Dark"
msgstr "Tamna" msgstr "Tamna"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
#, fuzzy #, fuzzy
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Prikaži nezavršene zadatke na vrhu liste" msgstr "Prikaži nezavršene zadatke na vrhu liste"
@@ -1521,6 +1569,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1588,9 +1639,6 @@ msgstr ""
"Program za uređivanje koji će biti korišten za uređivanje bilješki. Ako ni " "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." "jedan nije odabran, pokušati će se sa default programom."
msgid "Show advanced options"
msgstr "Prikaži napredne opcije"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1604,6 +1652,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Bilješka je promijenjena:" msgstr "Bilješka je promijenjena:"
@@ -1762,24 +1815,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Obriši odabranu bilješku ili bilježnicu."
#, fuzzy
msgid "Create a notebook"
msgstr "Stvara novu bilježnicu."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Trenutno nema bilješki. Stvori novu klikom na (+) gumb." msgstr "Trenutno nema bilješki. Stvori novu klikom na (+) gumb."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Obriši ove bilješke?" msgstr "Obriši ove bilješke?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Izvezi Debug izvještaj"
msgid "Encryption Config"
msgstr ""
msgid "Configuration"
msgstr "Konfiguracija"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Premjesti u bilježnicu..." msgstr "Premjesti u bilježnicu..."
@@ -1804,8 +1853,35 @@ msgstr "Odaberi datum"
msgid "Confirm" msgid "Confirm"
msgstr "Potvrdi" msgstr "Potvrdi"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Prekini sinkronizaciju" msgid "Notebook: %s"
msgstr "Bilježnice"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Neke stavke se ne mogu sinkronizirati."
#, fuzzy
msgid "New Notebook"
msgstr "Nova bilježnica"
msgid "Configuration"
msgstr "Konfiguracija"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Stvorene lokalne stavke: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Resursi: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "Nova bilješka"
msgid "Notebooks"
msgstr "Bilježnice"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1843,6 +1919,50 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Konfiguracija"
msgid "Encryption Config"
msgstr ""
#, fuzzy
msgid "Tools"
msgstr "Alati"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Uvozim bilješke..."
msgid "Export Debug Report"
msgstr "Izvezi Debug izvještaj"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Konfiguracija" msgstr "Konfiguracija"
@@ -1907,6 +2027,10 @@ msgstr "Bilježnicu nije moguće snimiti: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Uredi bilježnicu" msgstr "Uredi bilježnicu"
#, fuzzy
msgid "Enter notebook title"
msgstr "Naslov bilježnice:"
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1930,10 +2054,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Nepodržana vrsta slike: %s" msgstr "Nepodržana vrsta slike: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Ažurirano: %d."
msgid "View on map"
msgstr "Vidi na karti"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Traži"
#, fuzzy
msgid "Choose an option"
msgstr "Prikaži napredne opcije"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Priloži sliku" msgstr "Priloži sliku"
@@ -1953,23 +2099,18 @@ msgstr "Pretvori u bilješku"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Pretvori u zadatak" msgstr "Pretvori u zadatak"
msgid "Hide metadata" msgid "Properties"
msgstr "Sakrij metapodatke" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Prikaži metapodatke"
msgid "View on map"
msgstr "Vidi na karti"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Uredi" msgstr "Uredi"
msgid "Delete notebook" #, fuzzy
msgstr "Obriši bilježnicu" msgid "Add title"
msgstr "Nenaslovljen"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Prijavi se u OneDrive" msgstr "Prijavi se u OneDrive"
@@ -1977,18 +2118,31 @@ msgstr "Prijavi se u OneDrive"
msgid "Search" msgid "Search"
msgstr "Traži" msgstr "Traži"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Prekini sinkronizaciju"
"menu to access your existing notebooks."
msgstr ""
"Klikni (+) gumb za dodavanje nove bilješke ili bilježnice ili odaberi "
"postojeću bilježnicu iz izbornika."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "Trenutno nemaš nijednu bilježnicu. Stvori novu klikom na (+) gumb." #~ msgstr "Sakrij metapodatke"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Dobro došli" #~ msgstr "Prikaži metapodatke"
#~ msgid "Delete notebook"
#~ msgstr "Obriši bilježnicu"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Klikni (+) gumb za dodavanje nove bilješke ili bilježnice ili odaberi "
#~ "postojeću bilježnicu iz izbornika."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Trenutno nemaš nijednu bilježnicu. Stvori novu klikom na (+) gumb."
#~ msgid "Welcome"
#~ msgstr "Dobro došli"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Odvoji oznake zarezom." #~ msgstr "Odvoji oznake zarezom."
@@ -2058,9 +2212,6 @@ msgstr "Dobro došli"
#~ msgid "Cancel the current command." #~ msgid "Cancel the current command."
#~ msgstr "Prekini trenutnu naredbu." #~ msgstr "Prekini trenutnu naredbu."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Obriši odabranu bilješku ili bilježnicu."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Postavi zadatak kao završen/nezavršen" #~ msgstr "Postavi zadatak kao završen/nezavršen"

View File

@@ -17,7 +17,8 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "To delete a tag, untag the associated notes." msgid "To delete a tag, untag the associated notes."
msgstr "Per cancellare un'etichetta, togli l'etichetta associata alle note." msgstr ""
"Per eliminare un'etichetta, togli l'etichetta dalle note a cui è associata."
msgid "Please select the note or notebook to be deleted first." msgid "Please select the note or notebook to be deleted first."
msgstr "Per favore seleziona la nota o il taccuino da eliminare." msgstr "Per favore seleziona la nota o il taccuino da eliminare."
@@ -49,7 +50,7 @@ msgid "y"
msgstr "s" msgstr "s"
msgid "Cancelling background synchronisation... Please wait." msgid "Cancelling background synchronisation... Please wait."
msgstr "Cancellazione della sincronizzazione in background... Attendere prego." msgstr "Annullamento della sincronizzazione in background... Attendere prego."
#, javascript-format #, javascript-format
msgid "No such command: %s" msgid "No such command: %s"
@@ -142,7 +143,7 @@ msgid ""
"Starting decryption... Please wait as it may take several minutes depending " "Starting decryption... Please wait as it may take several minutes depending "
"on how much there is to decrypt." "on how much there is to decrypt."
msgstr "" msgstr ""
"Avvio decrittazione ... Attendere prego, ci potrebbero volere diversi minuti " "Avvio decrittazione... Attendere prego, ci potrebbero volere diversi minuti "
"per la decriptazione." "per la decriptazione."
msgid "Completed decryption." msgid "Completed decryption."
@@ -191,7 +192,7 @@ msgid ""
"Exports Joplin data to the given path. By default, it will export the " "Exports Joplin data to the given path. By default, it will export the "
"complete database including notebooks, notes, tags and resources." "complete database including notebooks, notes, tags and resources."
msgstr "" msgstr ""
"Esporta i dati da Joplin nella directory selezionata. Come impostazione " "Esporta i dati da Joplin nella cartella selezionata. Come impostazione "
"predefinita verrà esportato il database completo, inclusi i taccuini, note, " "predefinita verrà esportato il database completo, inclusi i taccuini, note, "
"etichette e risorse." "etichette e risorse."
@@ -375,7 +376,7 @@ msgid ""
"be deleted." "be deleted."
msgstr "" msgstr ""
"Eliminare taccuino? Anche tutte le note e cartelle di questo taccuino " "Eliminare taccuino? Anche tutte le note e cartelle di questo taccuino "
"saranno cancellati." "saranno eliminate."
msgid "Deletes the notes matching <note-pattern>." msgid "Deletes the notes matching <note-pattern>."
msgstr "Elimina le note che corrispondono a <note-pattern>." msgstr "Elimina le note che corrispondono a <note-pattern>."
@@ -393,6 +394,23 @@ msgstr "Eliminare la nota?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Cerca <pattern> in tutte le note." msgstr "Cerca <pattern> in tutte le note."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -466,7 +484,7 @@ msgid "Downloading resources..."
msgstr "Scaricamento risorse…" msgstr "Scaricamento risorse…"
msgid "Cancelling... Please wait." msgid "Cancelling... Please wait."
msgstr "Cancellazione... Attendere per favore." msgstr "Annullamento... Attendere per favore."
#, fuzzy #, fuzzy
msgid "" msgid ""
@@ -534,6 +552,11 @@ msgstr "Scrivi `joplin help` per informazioni sull'uso."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Errore fatale:" msgstr "Errore fatale:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
"Tutte le potenziali porte sono in uso - prego riportare il problema a %s"
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -551,9 +574,9 @@ msgid ""
"will be shared with any third party." "will be shared with any third party."
msgstr "" msgstr ""
"Per favore apri il seguente URL nel tuo browser per autenticare " "Per favore apri il seguente URL nel tuo browser per autenticare "
"l'applicazione. L'applicazione creerà una directory in \"Apps/Joplin\" e " "l'applicazione. L'applicazione creerà una cartella in \"Apps/Joplin\" e "
"leggerà/scriverà file solo in questa directory. Non avrà accesso a nessun " "leggerà/scriverà file solo in questa cartella. Non avrà accesso a nessun "
"file all'esterno di questa directory o ad alcun dato personale. Nessun dato " "file all'esterno di questa cartella o ad alcun dato personale. Nessun dato "
"verrà condiviso con terze parti." "verrà condiviso con terze parti."
msgid "Search:" msgid "Search:"
@@ -633,6 +656,25 @@ msgstr "Opzioni Crittografia"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Opzioni Web Clipper" msgstr "Opzioni Web Clipper"
msgid "Create note from template"
msgstr "Crea nota da modello"
msgid "Create to-do from template"
msgstr "Nuovo \"Cose-da-fare\" da modello"
msgid "Insert template"
msgstr "Inserisci modello"
msgid "Open template directory"
msgstr "Apri cartella modelli"
msgid "Refresh templates"
msgstr "Aggiorna modelli"
#, javascript-format
msgid "Revision: %s (%s)"
msgstr "Revisione: %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -649,6 +691,9 @@ msgstr "Preferenze..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Controlla aggiornamenti..." msgstr "Controlla aggiornamenti..."
msgid "Templates"
msgstr "Modelli"
msgid "Import" msgid "Import"
msgstr "Importa" msgstr "Importa"
@@ -692,12 +737,18 @@ msgstr "Corsivo"
msgid "Link" msgid "Link"
msgstr "Link" msgstr "Link"
msgid "Code"
msgstr "Codice"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Inserisci data e ora" msgstr "Inserisci data e ora"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Modifica in un editor esterno" msgstr "Modifica in un editor esterno"
msgid "Tags"
msgstr "Tag"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Cerca in tutte le note" msgstr "Cerca in tutte le note"
@@ -725,11 +776,15 @@ msgstr "&Aiuto"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Sito web e documentazione" msgstr "Sito web e documentazione"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Fai una donazione" msgstr "Fai una donazione"
msgid "Toggle development tools" msgid "Toggle development tools"
msgstr "" msgstr "Attiva / disattiva strumenti di sviluppo"
#, javascript-format #, javascript-format
msgid "Open %s" msgid "Open %s"
@@ -742,14 +797,14 @@ msgid "OK"
msgstr "OK" msgstr "OK"
msgid "Cancel" msgid "Cancel"
msgstr "Cancella" msgstr "Annulla"
msgid "Current version is up-to-date." msgid "Current version is up-to-date."
msgstr "La versione attuale è aggiornata." msgstr "La versione attuale è aggiornata."
#, javascript-format #, javascript-format
msgid "%s (pre-release)" msgid "%s (pre-release)"
msgstr "" msgstr "%s (pre-rilascio)"
msgid "An update is available, do you want to download it now?" msgid "An update is available, do you want to download it now?"
msgstr "È disponibile un aggiornamento, vuoi scaricarlo ora?" msgstr "È disponibile un aggiornamento, vuoi scaricarlo ora?"
@@ -929,8 +984,8 @@ msgstr ""
"ad essi. È probabile che verranno scaricati tramite la sincronizzazione." "ad essi. È probabile che verranno scaricati tramite la sincronizzazione."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Per ulteriori informazioni sulla crittografia end-to-end (E2EE) e consigli " "Per ulteriori informazioni sulla crittografia end-to-end (E2EE) e consigli "
"su come abilitarlo, consultare la documentazione:" "su come abilitarlo, consultare la documentazione:"
@@ -962,7 +1017,7 @@ msgid "Notebook title:"
msgstr "Titolo del Taccuino:" msgstr "Titolo del Taccuino:"
msgid "Add or remove tags:" msgid "Add or remove tags:"
msgstr "Aggiungi or rimuovi etichetta:" msgstr "Aggiungi o rimuovi etichetta:"
msgid "Rename notebook:" msgid "Rename notebook:"
msgstr "Rinomina il Taccuino:" msgstr "Rinomina il Taccuino:"
@@ -973,6 +1028,9 @@ msgstr "Rinomina Tag:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Imposta allarme:" msgstr "Imposta allarme:"
msgid "Template file:"
msgstr "File del modello:"
msgid "Layout" msgid "Layout"
msgstr "Disposizione" msgstr "Disposizione"
@@ -985,9 +1043,8 @@ msgstr "Alcuni elementi non possono essere sincronizzati."
msgid "View them now" msgid "View them now"
msgstr "Mostrali ora" msgstr "Mostrali ora"
#, fuzzy
msgid "One or more master keys need a password." msgid "One or more master keys need a password."
msgstr "Inserisci password principale:" msgstr "Una o più chiavi master necessitano di una password."
msgid "Set the password" msgid "Set the password"
msgstr "Imposta la password" msgstr "Imposta la password"
@@ -1010,6 +1067,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Cronologia nota" msgstr "Cronologia nota"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Versione precedente di questa nota" msgstr "Versione precedente di questa nota"
@@ -1084,9 +1144,6 @@ msgstr "Inserire collegamento ipertestuale"
msgid "Attach file" msgid "Attach file"
msgstr "Allega File" msgstr "Allega File"
msgid "Tags"
msgstr "Tag"
msgid "Set alarm" msgid "Set alarm"
msgstr "Imposta Allarme" msgstr "Imposta Allarme"
@@ -1097,9 +1154,6 @@ msgstr "In: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Collegamento ipertestuale" msgstr "Collegamento ipertestuale"
msgid "Code"
msgstr "Codice"
msgid "Numbered List" msgid "Numbered List"
msgstr "Elenco Numerato" msgstr "Elenco Numerato"
@@ -1163,7 +1217,7 @@ msgid ""
msgstr "" msgstr ""
"Eliminare taccuino \"%s\"?\n" "Eliminare taccuino \"%s\"?\n"
"\n" "\n"
"Anche tutte le note e cartelle di questo taccuino saranno cancellati." "Anche tutte le note e cartelle di questo taccuino saranno eliminati."
#, javascript-format #, javascript-format
msgid "Remove tag \"%s\" from all notes?" msgid "Remove tag \"%s\" from all notes?"
@@ -1178,25 +1232,15 @@ msgstr "Elimina"
msgid "Rename" msgid "Rename"
msgstr "Rinomina" msgstr "Rinomina"
msgid "Notebooks"
msgstr "Taccuini"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Decrittografia Elementi: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Risorse: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
"Prego selezionare dove lo stato della sincronizzazione deve essere esportato"
msgid "Retry" msgid "Retry"
msgstr "" msgstr "Riprova"
msgid "Add or remove tags" msgid "Add or remove tags"
msgstr "Aggiungi o rimuovi etichetta" msgstr "Aggiungi o rimuovi etichette"
msgid "Duplicate" msgid "Duplicate"
msgstr "Duplicare" msgstr "Duplicare"
@@ -1223,15 +1267,17 @@ msgstr "Eliminare la nota \"%s\"?"
#, javascript-format #, javascript-format
msgid "Delete these %d notes?" msgid "Delete these %d notes?"
msgstr "Cancellare queste %d note?" msgstr "Eliminare queste %d note?"
msgid "" msgid ""
"Type a note title to jump to it. Or type # followed by a tag name, or @ " "Type a note title to jump to it. Or type # followed by a tag name, or @ "
"followed by a notebook name." "followed by a notebook name."
msgstr "" msgstr ""
"Scrivi il titolo di una nota per saltare ad essa. Oppure digita # seguito "
"dal nome di una etichetta, oppure @ seguito dal nome di un taccuino."
msgid "Goto Anything..." msgid "Goto Anything..."
msgstr "" msgstr "Vai a..."
#, javascript-format #, javascript-format
msgid "Usage: %s" msgid "Usage: %s"
@@ -1325,7 +1371,7 @@ msgid "Fetched items: %d/%d."
msgstr "Elementi recuperati: %d/%d." msgstr "Elementi recuperati: %d/%d."
msgid "Cancelling..." msgid "Cancelling..."
msgstr "Cancellazione..." msgstr "Annullamento..."
#, javascript-format #, javascript-format
msgid "Completed: %s" msgid "Completed: %s"
@@ -1348,6 +1394,8 @@ msgstr "La sincronizzazione è già in corso. Stato: %s"
msgid "" msgid ""
"Unknown item type downloaded - please upgrade Joplin to the latest version" "Unknown item type downloaded - please upgrade Joplin to the latest version"
msgstr "" msgstr ""
"Tipo elemento scaricato sconosciuto - prego aggiornare Joplin all’ultima "
"versione"
msgid "Encrypted" msgid "Encrypted"
msgstr "Crittografato" msgstr "Crittografato"
@@ -1391,6 +1439,9 @@ msgid ""
"to it before syncing, otherwise all files will be removed! See the FAQ for " "to it before syncing, otherwise all files will be removed! See the FAQ for "
"more details: %s" "more details: %s"
msgstr "" msgstr ""
"Attenzione: se si cambia questa posizione, accertarsi di copiare tutto il "
"contenuto prima di sincronizzare, altrimenti tutti i file saranno rimossi! "
"Vedi le FAQ per maggiori dettagli: %s"
msgid "Synchronisation target" msgid "Synchronisation target"
msgstr "Destinazione di sincronizzazione" msgstr "Destinazione di sincronizzazione"
@@ -1424,13 +1475,16 @@ msgid "WebDAV password"
msgstr "Password WebDAV" msgstr "Password WebDAV"
msgid "Attachment download behaviour" msgid "Attachment download behaviour"
msgstr "" msgstr "Comportamento scaricamento allegati"
msgid "" msgid ""
"In \"Manual\" mode, attachments are downloaded only when you click on them. " "In \"Manual\" mode, attachments are downloaded only when you click on them. "
"In \"Auto\", they are downloaded when you open the note. In \"Always\", all " "In \"Auto\", they are downloaded when you open the note. In \"Always\", all "
"the attachments are downloaded whether you open the note or not." "the attachments are downloaded whether you open the note or not."
msgstr "" msgstr ""
"In modalità \"Manuale\", gli allegati sono scaricati solo quando si clicca "
"su di essi. In \"Auto\" sono scaricati quando si apre la nota. In \"Sempre\" "
"tutti gli allegati sono scaricati sia che si apra o no la nota."
msgid "Always" msgid "Always"
msgstr "Sempre" msgstr "Sempre"
@@ -1442,7 +1496,7 @@ msgid "Auto"
msgstr "Auto" msgstr "Auto"
msgid "Max concurrent connections" msgid "Max concurrent connections"
msgstr "" msgstr "Massimo numero di connessioni concorrenti"
msgid "Language" msgid "Language"
msgstr "Linguaggio" msgstr "Linguaggio"
@@ -1462,11 +1516,17 @@ msgstr "Chiaro"
msgid "Dark" msgid "Dark"
msgstr "Scuro" msgstr "Scuro"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Cose da fare incomplete in cima alla lista" msgstr "\"Cose-da-fare\" incomplete in cima alla lista"
msgid "Show completed to-dos" msgid "Show completed to-dos"
msgstr "Mostra le cose da fare completate" msgstr "Mostra le \"Cose-da-fare\" completate"
msgid "Sort notes by" msgid "Sort notes by"
msgstr "Ordina le note per" msgstr "Ordina le note per"
@@ -1499,7 +1559,7 @@ msgid "Enable math expressions"
msgstr "Attiva espressioni matematiche" msgstr "Attiva espressioni matematiche"
msgid "Enable ==mark== syntax" msgid "Enable ==mark== syntax"
msgstr "" msgstr "Attiva sintassi ==mark=="
msgid "Enable footnotes" msgid "Enable footnotes"
msgstr "Attiva note a piè pagina" msgstr "Attiva note a piè pagina"
@@ -1508,10 +1568,10 @@ msgid "Enable table of contents extension"
msgstr "" msgstr ""
msgid "Enable ~sub~ syntax" msgid "Enable ~sub~ syntax"
msgstr "" msgstr "Attiva sintassi ~sub~"
msgid "Enable ^sup^ syntax" msgid "Enable ^sup^ syntax"
msgstr "" msgstr "Attiva sintassi ^sup^"
msgid "Enable deflist syntax" msgid "Enable deflist syntax"
msgstr "" msgstr ""
@@ -1523,11 +1583,15 @@ msgid "Enable markdown emoji"
msgstr "" msgstr ""
msgid "Enable ++insert++ syntax" msgid "Enable ++insert++ syntax"
msgstr "" msgstr "Attiva sintassi ++insert++"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Attiva sintassi ~sub~"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Visualizza tray icon" msgstr "Visualizza tray icon"
@@ -1544,7 +1608,7 @@ msgstr ""
"costantemente le tue note e quindi ridurre il numero di conflitti." "costantemente le tue note e quindi ridurre il numero di conflitti."
msgid "Start application minimised in the tray icon" msgid "Start application minimised in the tray icon"
msgstr "" msgstr "Avvia applicazione minimizzata nell’icona del vassoio"
msgid "Global zoom percentage" msgid "Global zoom percentage"
msgstr "Percentuale di zoom globale" msgstr "Percentuale di zoom globale"
@@ -1567,11 +1631,11 @@ msgid "Automatically update the application"
msgstr "Aggiorna automaticamente l'applicazione" msgstr "Aggiorna automaticamente l'applicazione"
msgid "Get pre-releases when checking for updates" msgid "Get pre-releases when checking for updates"
msgstr "" msgstr "Ottieni pre-rilasci durante controllo aggiornamenti"
#, javascript-format #, javascript-format
msgid "See the pre-release page for more details: %s" msgid "See the pre-release page for more details: %s"
msgstr "" msgstr "Vedi la pagina di pre-rilascio per maggiori dettagli: %s"
msgid "Synchronisation interval" msgid "Synchronisation interval"
msgstr "Intervallo di sincronizzazione" msgstr "Intervallo di sincronizzazione"
@@ -1599,9 +1663,6 @@ msgstr ""
"una nota. Se non ne viene fornita alcuna, cercherà di rilevare " "una nota. Se non ne viene fornita alcuna, cercherà di rilevare "
"automaticamente l'editor predefinito." "automaticamente l'editor predefinito."
msgid "Show advanced options"
msgstr "Mostra opzioni avanzate"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Certificati TLS personalizzati" msgstr "Certificati TLS personalizzati"
@@ -1620,6 +1681,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignora gli errori del certificato TLS" msgstr "Ignora gli errori del certificato TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "Attiva cronologia della nota" msgstr "Attiva cronologia della nota"
@@ -1631,7 +1697,7 @@ msgid "%d days"
msgstr "%d giorni" msgstr "%d giorni"
msgid "Keep note history for" msgid "Keep note history for"
msgstr "" msgstr "Mantieni cronologia nota per"
#, javascript-format #, javascript-format
msgid "Invalid option value: \"%s\". Possible values are: %s." msgid "Invalid option value: \"%s\". Possible values are: %s."
@@ -1650,7 +1716,7 @@ msgid "Note"
msgstr "Nota" msgstr "Nota"
msgid "Plugins" msgid "Plugins"
msgstr "" msgstr "Plugins"
msgid "Application" msgid "Application"
msgstr "Applicazione" msgstr "Applicazione"
@@ -1725,15 +1791,17 @@ msgstr "%s (%s) non può essere caricato: %s"
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "Elemento \"%s\" non può essere scaricato: %s" msgstr "Elemento \"%s\" non può essere scaricato: %s"
#, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
msgstr "Elementi che non possono essere sincronizzati" msgstr "Elementi che non possono essere decriptati"
msgid "" msgid ""
"Joplin failed to decrypt these items multiple times, possibly because they " "Joplin failed to decrypt these items multiple times, possibly because they "
"are corrupted or too large. These items will remain on the device but Joplin " "are corrupted or too large. These items will remain on the device but Joplin "
"will no longer attempt to decrypt them." "will no longer attempt to decrypt them."
msgstr "" msgstr ""
"Joplin ha fallito la decriptazione di questi elementi più volte, forse "
"perché sono corrotti o troppo grandi. Questi elementi rimarranno sul "
"dispositivo, ma Joplin non proverà più a decriptarli."
msgid "Sync status (synced items / total items)" msgid "Sync status (synced items / total items)"
msgstr "Stato di sincronizzazione (Elementi sincronizzati / Elementi totali)" msgstr "Stato di sincronizzazione (Elementi sincronizzati / Elementi totali)"
@@ -1752,7 +1820,7 @@ msgstr "In conflitto: %d"
#, javascript-format #, javascript-format
msgid "To delete: %d" msgid "To delete: %d"
msgstr "Da cancellare: %d" msgstr "Da eliminare: %d"
msgid "Folders" msgid "Folders"
msgstr "Cartelle" msgstr "Cartelle"
@@ -1774,23 +1842,19 @@ msgstr "Permesso di usare la fotocamera"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "E’ richiesto il permesso di usare la fotocamera." msgstr "E’ richiesto il permesso di usare la fotocamera."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Elimina la nota o il taccuino selezionato."
#, fuzzy
msgid "Create a notebook"
msgstr "Crea un nuovo Taccuino."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Al momento non ci sono note. Creane una cliccando sul bottone (+)." msgstr "Al momento non ci sono note. Creane una cliccando sul bottone (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Cancellare queste note?" msgstr "Eliminare queste note?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Esporta il Report di Debug"
msgid "Encryption Config"
msgstr "Configurazione Crittografia"
msgid "Configuration"
msgstr "Configurazione"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Sposta sul Taccuino..." msgstr "Sposta sul Taccuino..."
@@ -1814,8 +1878,32 @@ msgstr "Seleziona la data"
msgid "Confirm" msgid "Confirm"
msgstr "Conferma" msgstr "Conferma"
msgid "Cancel synchronisation" #, javascript-format
msgstr "Cancella la sincronizzazione" msgid "Notebook: %s"
msgstr "Taccuini: %s"
msgid "Encrypted notebooks cannot be renamed"
msgstr "I Taccuini crittografati non possono essere rinominati"
msgid "New Notebook"
msgstr "Nuovo Taccuino"
msgid "Configuration"
msgstr "Configurazione"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Decrittografia Elementi: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Recupero risorse: %d/%d"
msgid "All notes"
msgstr "Tutte le note"
msgid "Notebooks"
msgstr "Taccuini"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Controllo... Attendere per favore." msgstr "Controllo... Attendere per favore."
@@ -1828,6 +1916,9 @@ msgid ""
"Error. Please check that URL, username, password, etc. are correct and that " "Error. Please check that URL, username, password, etc. are correct and that "
"the sync target is accessible. The reported error was:" "the sync target is accessible. The reported error was:"
msgstr "" msgstr ""
"Errore. Prego controllare che URL, nome utente, password, etc. siano "
"corretti e che la destinazione di sincronizzazione sia accessibile. L’errore "
"riportato era:"
msgid "The application has been authorised!" msgid "The application has been authorised!"
msgstr "L'applicazione è stata autorizzata con successo!" msgstr "L'applicazione è stata autorizzata con successo!"
@@ -1840,6 +1931,11 @@ msgid ""
"\n" "\n"
"Please try again." "Please try again."
msgstr "" msgstr ""
"Non è stato possibile autorizzare l’applicazione:\n"
"\n"
"%s\n"
"\n"
"Riprovare prego."
#, javascript-format #, javascript-format
msgid "Decrypted items: %s / %s" msgid "Decrypted items: %s / %s"
@@ -1851,9 +1947,50 @@ msgstr "Nuovi tag:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Digita nuovi tag o seleziona dalla lista" msgstr "Digita nuovi tag o seleziona dalla lista"
#, fuzzy msgid "Warning"
msgstr "Attenzione"
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
msgid "Information"
msgstr "Informazioni"
msgid "Encryption Config"
msgstr "Configurazione Crittografia"
msgid "Tools"
msgstr "Strumenti"
msgid "Sync Status"
msgstr "Stato sincronizzazione"
msgid "Log"
msgstr "Log"
msgid "Creating report..."
msgstr "Creazione report..."
msgid "Export Debug Report"
msgstr "Esporta il Report di Debug"
msgid "Fixing search index..."
msgstr "Correzione indice di ricerca..."
msgid "Fix search index"
msgstr "Correggi indice di ricerca"
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
"Usa questo per ricostruire l’indice di ricerca se c’è un problema con la "
"ricerca. Potrebbe richiedere molto tempo, dipende dal numero di note."
msgid "More information" msgid "More information"
msgstr "Configurazione" msgstr "Maggiori informazioni"
msgid "" msgid ""
"To work correctly, the app needs the following permissions. Please enable " "To work correctly, the app needs the following permissions. Please enable "
@@ -1920,6 +2057,9 @@ msgstr "Il Taccuino non può essere salvato: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Modifica Taccuino" msgstr "Modifica Taccuino"
msgid "Enter notebook title"
msgstr "Inserisci titolo del Taccuino"
msgid "Show all" msgid "Show all"
msgstr "Mostra tutto" msgstr "Mostra tutto"
@@ -1944,10 +2084,30 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"L'app mobile Joplin attualmente non supporta questo tipo di collegamento: %s" "L'app mobile Joplin attualmente non supporta questo tipo di collegamento: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "Collegamenti con protocollo \"%s\" non sono supportati"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Tipo di immagine non supportata: %s" msgstr "Tipo di immagine non supportata: %s"
#, javascript-format
msgid "Updated: %s"
msgstr "Aggiornato: %s"
msgid "View on map"
msgstr "Guarda sulla mappa"
msgid "Go to source URL"
msgstr ""
msgid "Attach..."
msgstr "Allega..."
msgid "Choose an option"
msgstr "Scegli un’opzione"
msgid "Take photo" msgid "Take photo"
msgstr "Scatta foto" msgstr "Scatta foto"
@@ -1966,23 +2126,17 @@ msgstr "Converti in nota"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Converti in Todo" msgstr "Converti in Todo"
msgid "Hide metadata" msgid "Properties"
msgstr "Nascondi i Metadati" msgstr "Proprietà"
msgid "Show metadata" msgid "Add body"
msgstr "Mostra i metadati" msgstr "Aggiungi corpo"
msgid "View on map"
msgstr "Guarda sulla mappa"
msgid "Go to source URL"
msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Modifica" msgstr "Modifica"
msgid "Delete notebook" msgid "Add title"
msgstr "Cancella Taccuino" msgstr "Aggiungi titolo"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Accedi a OneDrive" msgstr "Accedi a OneDrive"
@@ -1990,19 +2144,37 @@ msgstr "Accedi a OneDrive"
msgid "Search" msgid "Search"
msgstr "Cerca" msgstr "Cerca"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Permesso di usare la fotocamera"
msgstr ""
"Fare clic sul pulsante (+) per creare una nuova Nota o un nuovo Taccuino. "
"Fare clic sul menu laterale per accedere ai tuoi Taccuini esistenti."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "Annulla la sincronizzazione"
"Attualmente non hai nessun Taccuino. Crearne uno cliccando sul pulsante (+)."
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Benvenuto" #~ msgstr "Nascondi i Metadati"
#~ msgid "Show metadata"
#~ msgstr "Mostra i metadati"
#~ msgid "Delete notebook"
#~ msgstr "Elimina Taccuino"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Fare clic sul pulsante (+) per creare una nuova Nota o un nuovo Taccuino. "
#~ "Fare clic sul menu laterale per accedere ai tuoi Taccuini esistenti."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Attualmente non hai nessun Taccuino. Crearne uno cliccando sul pulsante "
#~ "(+)."
#~ msgid "Welcome"
#~ msgstr "Benvenuto"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separa ogni etichetta da una virgola." #~ msgstr "Separa ogni etichetta da una virgola."
@@ -2020,12 +2192,6 @@ msgstr "Benvenuto"
#~ "Il percorso di sincronizzazione quando la sincronizzazione è abilitata. " #~ "Il percorso di sincronizzazione quando la sincronizzazione è abilitata. "
#~ "Vedi `sync.target`." #~ "Vedi `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "Delete notes?"
#~ msgstr "Eliminare le note?"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Stato: %s." #~ msgstr "Stato: %s."
@@ -2090,10 +2256,7 @@ msgstr "Benvenuto"
#~ msgstr "Modifica la nota selezionata" #~ msgstr "Modifica la nota selezionata"
#~ msgid "Cancel the current command." #~ msgid "Cancel the current command."
#~ msgstr "Cancella il comando corrente." #~ msgstr "Annulla il comando corrente."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Elimina la nota o il taccuino selezionato."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Imposta un \"Cose-da-fare\" come completato / non completato" #~ msgstr "Imposta un \"Cose-da-fare\" come completato / non completato"
@@ -2139,4 +2302,4 @@ msgstr "Benvenuto"
#~ msgstr "Eliminare il taccuino?" #~ msgstr "Eliminare il taccuino?"
#~ msgid "File system synchronisation target directory" #~ msgid "File system synchronisation target directory"
#~ msgstr "Directory di destinazione per la sincronizzazione nel file system" #~ msgstr "Cartella di destinazione per la sincronizzazione nel file system"

View File

@@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.2.3\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
msgid "To delete a tag, untag the associated notes." msgid "To delete a tag, untag the associated notes."
@@ -385,6 +385,23 @@ msgstr "ノートを削除しますか?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "指定された<pattern>をすべてのノートから検索する。" msgstr "指定された<pattern>をすべてのノートから検索する。"
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -517,6 +534,10 @@ msgstr "`joplin help`を実行して使い方を表示します。"
msgid "Fatal error:" msgid "Fatal error:"
msgstr "致命的なエラー:" msgstr "致命的なエラー:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr "すべての潜在ポートは利用中です - 問題を %s に報告してください"
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "アプリケーションは認証されました - ブラウザを閉じてもかまいません。" msgstr "アプリケーションは認証されました - ブラウザを閉じてもかまいません。"
@@ -572,18 +593,16 @@ msgstr ""
"\"%s\" を \"%s\" フォーマットにエクスポート中。しばらくお待ちください..." "\"%s\" を \"%s\" フォーマットにエクスポート中。しばらくお待ちください..."
msgid "Sidebar" msgid "Sidebar"
msgstr "" msgstr "サイドバー"
msgid "Note list" msgid "Note list"
msgstr "" msgstr "ノートの一覧"
#, fuzzy
msgid "Note title" msgid "Note title"
msgstr "ノートブックの題名:" msgstr "ノートの題名:"
#, fuzzy
msgid "Note body" msgid "Note body"
msgstr "ノートブック" msgstr "ノートの本文"
#, javascript-format #, javascript-format
msgid "Importing from \"%s\" as \"%s\" format. Please wait..." msgid "Importing from \"%s\" as \"%s\" format. Please wait..."
@@ -617,23 +636,45 @@ msgstr "暗号化のオプション"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Webクリッパーのオプション" msgstr "Webクリッパーのオプション"
msgid "Create note from template"
msgstr "テンプレートからノートを作成"
msgid "Create to-do from template"
msgstr "テンプレートからto-doを作成"
msgid "Insert template"
msgstr "テンプレートを挿入"
msgid "Open template directory"
msgstr "テンプレートディレクトリを開く"
msgid "Refresh templates"
msgstr "テンプレートの更新"
#, javascript-format
msgid "Revision: %s (%s)"
msgstr "リビジョン: %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
#, fuzzy
msgid "&File" msgid "&File"
msgstr "ファイル" msgstr "&ファイル"
msgid "About Joplin" msgid "About Joplin"
msgstr "Joplinについて" msgstr "Joplinについて"
#, fuzzy
msgid "Preferences..." msgid "Preferences..."
msgstr "" msgstr "環境設定"
msgid "Check for updates..." msgid "Check for updates..."
msgstr "アップデートのチェック..." msgstr "アップデートのチェック..."
msgid "Templates"
msgstr "テンプレート"
msgid "Import" msgid "Import"
msgstr "インポート" msgstr "インポート"
@@ -651,11 +692,10 @@ msgid "Quit"
msgstr "終了" msgstr "終了"
msgid "Close Window" msgid "Close Window"
msgstr "" msgstr "ウィンドウを閉じる"
#, fuzzy
msgid "&Edit" msgid "&Edit"
msgstr "編集" msgstr "&編集"
msgid "Copy" msgid "Copy"
msgstr "コピー" msgstr "コピー"
@@ -676,7 +716,10 @@ msgid "Italic"
msgstr "斜体" msgstr "斜体"
msgid "Link" msgid "Link"
msgstr "" msgstr "リンク"
msgid "Code"
msgstr "コード"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "日付の入力" msgstr "日付の入力"
@@ -684,15 +727,17 @@ msgstr "日付の入力"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "外部エディターで編集" msgstr "外部エディターで編集"
msgid "Tags"
msgstr "タグ"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "すべてのノートを検索" msgstr "すべてのノートを検索"
msgid "Search in current note" msgid "Search in current note"
msgstr "現在のノートを検索" msgstr "現在のノートを検索"
#, fuzzy
msgid "&View" msgid "&View"
msgstr "表示" msgstr "&表示"
msgid "Toggle sidebar" msgid "Toggle sidebar"
msgstr "サイドバーの表示切り替え" msgstr "サイドバーの表示切り替え"
@@ -700,26 +745,27 @@ msgstr "サイドバーの表示切り替え"
msgid "Toggle editor layout" msgid "Toggle editor layout"
msgstr "エディターレイアウトの表示切り替え" msgstr "エディターレイアウトの表示切り替え"
#, fuzzy
msgid "Focus" msgid "Focus"
msgstr "本文にフォーカス" msgstr "フォーカス"
#, fuzzy
msgid "&Tools" msgid "&Tools"
msgstr "ツール" msgstr "&ツール"
#, fuzzy
msgid "&Help" msgid "&Help"
msgstr "ヘルプ" msgstr "&ヘルプ"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Webサイトとドキュメント" msgstr "Webサイトとドキュメント"
#, fuzzy
msgid "Joplin Forum"
msgstr "JoplinのWebサイト"
msgid "Make a donation" msgid "Make a donation"
msgstr "寄付する" msgstr "寄付する"
msgid "Toggle development tools" msgid "Toggle development tools"
msgstr "" msgstr "開発者ツールのオンオフを切り替える"
#, javascript-format #, javascript-format
msgid "Open %s" msgid "Open %s"
@@ -739,18 +785,18 @@ msgstr "現在のバージョンは最新版です。"
#, javascript-format #, javascript-format
msgid "%s (pre-release)" msgid "%s (pre-release)"
msgstr "" msgstr "%s (プレリリース)"
msgid "An update is available, do you want to download it now?" msgid "An update is available, do you want to download it now?"
msgstr "アップデートがあります。すぐにダウンロードしますか?" msgstr "アップデートがあります。すぐにダウンロードしますか?"
#, javascript-format #, javascript-format
msgid "Your version: %s" msgid "Your version: %s"
msgstr "" msgstr "あなたのバージョン: %s"
#, javascript-format #, javascript-format
msgid "New version: %s" msgid "New version: %s"
msgstr "" msgstr "新バージョン: %s"
msgid "Yes" msgid "Yes"
msgstr "Yes" msgstr "Yes"
@@ -833,7 +879,7 @@ msgid "Check synchronisation configuration"
msgstr "同期の設定を確認する" msgstr "同期の設定を確認する"
msgid "Browse..." msgid "Browse..."
msgstr "" msgstr "参照..."
msgid "Apply" msgid "Apply"
msgstr "適用" msgstr "適用"
@@ -914,8 +960,8 @@ msgstr ""
"ロードしてきたのでしょう。" "ロードしてきたのでしょう。"
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"エンドツーエンド暗号化(E2EE)に関する詳細な情報とどのように有効化するのかのア" "エンドツーエンド暗号化(E2EE)に関する詳細な情報とどのように有効化するのかのア"
"ドバイスは、次のドキュメントをご覧ください:" "ドバイスは、次のドキュメントをご覧ください:"
@@ -926,9 +972,8 @@ msgstr "状態"
msgid "Encryption is:" msgid "Encryption is:"
msgstr "暗号化の状態:" msgstr "暗号化の状態:"
#, fuzzy
msgid "Usage" msgid "Usage"
msgstr "使用方法: %s" msgstr "使い方"
msgid "Back" msgid "Back"
msgstr "戻る" msgstr "戻る"
@@ -961,6 +1006,9 @@ msgstr "タグの変更:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "アラームをセット:" msgstr "アラームをセット:"
msgid "Template file:"
msgstr "テンプレートファイル:"
msgid "Layout" msgid "Layout"
msgstr "レイアウト" msgstr "レイアウト"
@@ -973,9 +1021,8 @@ msgstr "いくつかの項目は同期されませんでした。"
msgid "View them now" msgid "View them now"
msgstr "今すぐ表示" msgstr "今すぐ表示"
#, fuzzy
msgid "One or more master keys need a password." msgid "One or more master keys need a password."
msgstr "マスターパスワードを入力してください:" msgstr "パスワードに1つ以上のマスターキーが必要です"
msgid "Set the password" msgid "Set the password"
msgstr "パスワードの設定" msgstr "パスワードの設定"
@@ -993,32 +1040,35 @@ msgstr "場所"
msgid "URL" msgid "URL"
msgstr "URL" msgstr "URL"
#, fuzzy
msgid "Note History" msgid "Note History"
msgstr "ノートブック" msgstr "ノートの履歴"
msgid "Markup"
msgstr "マークアップ"
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr "このノートの以前のバージョン"
msgid "Note properties" msgid "Note properties"
msgstr "ノートのプロパティ" msgstr "ノートのプロパティ"
#, javascript-format #, javascript-format
msgid "The note \"%s\" has been successfully restored to the notebook \"%s\"." msgid "The note \"%s\" has been successfully restored to the notebook \"%s\"."
msgstr "" msgstr "ノート \"%s\" のノートブック \"%s\"への復元は成功しました。"
#, fuzzy
msgid "This note has no history" msgid "This note has no history"
msgstr "ノートは変更されています:" msgstr "こののーとに履歴はありません"
msgid "Restore" msgid "Restore"
msgstr "" msgstr "復元"
#, javascript-format #, javascript-format
msgid "" msgid ""
"Click \"%s\" to restore the note. It will be copied in the notebook named " "Click \"%s\" to restore the note. It will be copied in the notebook named "
"\"%s\". The current version of the note will not be replaced or modified." "\"%s\". The current version of the note will not be replaced or modified."
msgstr "" msgstr ""
"\"%s\"をクリックすると復元を行います。復元されるノートは\"%s\"というノート"
"ブックにコピーされます。現在のバージョンのノートの置換や変更は行われません。"
msgid "Open..." msgid "Open..."
msgstr "開く..." msgstr "開く..."
@@ -1052,7 +1102,7 @@ msgstr ""
"ノートを編集してください。" "ノートを編集してください。"
msgid "Only one note can be printed or exported to PDF at a time." msgid "Only one note can be printed or exported to PDF at a time."
msgstr "" msgstr "一度に一つのノートだけPDFに印刷もしくはエクスポートができます。"
msgid "strong text" msgid "strong text"
msgstr "文字を太字に" msgstr "文字を太字に"
@@ -1069,9 +1119,6 @@ msgstr "ハイパーリンクの挿入"
msgid "Attach file" msgid "Attach file"
msgstr "ファイルを添付する" msgstr "ファイルを添付する"
msgid "Tags"
msgstr "タグ"
msgid "Set alarm" msgid "Set alarm"
msgstr "アラームをセット" msgstr "アラームをセット"
@@ -1082,9 +1129,6 @@ msgstr "内: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "ハイパーリンク" msgstr "ハイパーリンク"
msgid "Code"
msgstr "コード"
msgid "Numbered List" msgid "Numbered List"
msgstr "番号つきリスト" msgstr "番号つきリスト"
@@ -1140,18 +1184,19 @@ msgstr "暗号化のオプション"
msgid "Clipper Options" msgid "Clipper Options"
msgstr "Clipperのオプション" msgstr "Clipperのオプション"
#, fuzzy, javascript-format #, javascript-format
msgid "" msgid ""
"Delete notebook \"%s\"?\n" "Delete notebook \"%s\"?\n"
"\n" "\n"
"All notes and sub-notebooks within this notebook will also be deleted." "All notes and sub-notebooks within this notebook will also be deleted."
msgstr "" msgstr ""
"ノートブックを削除しますか? このノートブックにあるノートとサブノートはすべ" "ノートブック \"%s\" を削除しますか?\n"
"て消えてしまいます。" "\n"
"このノートブックにあるノートとサブノートはすべて消えてしまいます。"
#, fuzzy, javascript-format #, javascript-format
msgid "Remove tag \"%s\" from all notes?" msgid "Remove tag \"%s\" from all notes?"
msgstr "すべてのノートからこのタグを削除しますか?" msgstr "すべてのノートからタグ \"%s\" を削除しますか?"
msgid "Remove this search from the sidebar?" msgid "Remove this search from the sidebar?"
msgstr "サイドバーからこの検索を削除しますか?" msgstr "サイドバーからこの検索を削除しますか?"
@@ -1162,22 +1207,11 @@ msgstr "削除"
msgid "Rename" msgid "Rename"
msgstr "名前の変更" msgstr "名前の変更"
msgid "Notebooks"
msgstr "ノートブック"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "復号中のアイテム: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "取得中のリソース: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "同期状況の出力先を選択してください" msgstr "同期状況の出力先を選択してください"
msgid "Retry" msgid "Retry"
msgstr "" msgstr "再実行"
msgid "Add or remove tags" msgid "Add or remove tags"
msgstr "タグの追加と削除" msgstr "タグの追加と削除"
@@ -1201,21 +1235,23 @@ msgstr "ToDoに切り替え"
msgid "Copy Markdown link" msgid "Copy Markdown link"
msgstr "Markdownのリンクをコピー" msgstr "Markdownのリンクをコピー"
#, fuzzy, javascript-format #, javascript-format
msgid "Delete note \"%s\"?" msgid "Delete note \"%s\"?"
msgstr "ノートを削除しますか?" msgstr "ノート \"%s\" を削除しますか?"
#, fuzzy, javascript-format #, javascript-format
msgid "Delete these %d notes?" msgid "Delete these %d notes?"
msgstr "ノートを削除しますか?" msgstr "ノート \"%d\" を削除しますか?"
msgid "" msgid ""
"Type a note title to jump to it. Or type # followed by a tag name, or @ " "Type a note title to jump to it. Or type # followed by a tag name, or @ "
"followed by a notebook name." "followed by a notebook name."
msgstr "" msgstr ""
"ノートタイトルを入力すると、そのノートに移動します。または#につづいてタグ名も"
"しくは@につづいてノートブック名を使うこともできます。"
msgid "Goto Anything..." msgid "Goto Anything..."
msgstr "" msgstr "Goto Anything..."
#, javascript-format #, javascript-format
msgid "Usage: %s" msgid "Usage: %s"
@@ -1332,6 +1368,8 @@ msgstr "同期作業はすでに実行中です。状態: %s"
msgid "" msgid ""
"Unknown item type downloaded - please upgrade Joplin to the latest version" "Unknown item type downloaded - please upgrade Joplin to the latest version"
msgstr "" msgstr ""
"不明なアイテムタイプをダウンロードしました - 最新のJoplinにアップデートしてく"
"ださい"
msgid "Encrypted" msgid "Encrypted"
msgstr "暗号化済" msgstr "暗号化済"
@@ -1413,25 +1451,28 @@ msgid "WebDAV password"
msgstr "WevDAV パスワード" msgstr "WevDAV パスワード"
msgid "Attachment download behaviour" msgid "Attachment download behaviour"
msgstr "" msgstr "添付ファイルのダウンロードの動作"
msgid "" msgid ""
"In \"Manual\" mode, attachments are downloaded only when you click on them. " "In \"Manual\" mode, attachments are downloaded only when you click on them. "
"In \"Auto\", they are downloaded when you open the note. In \"Always\", all " "In \"Auto\", they are downloaded when you open the note. In \"Always\", all "
"the attachments are downloaded whether you open the note or not." "the attachments are downloaded whether you open the note or not."
msgstr "" msgstr ""
"\"手動\"モードは添付ファイルをクリックしたときのみダウンロードをします。\"自"
"動\"はノートを開いたときにダウンロードをします。\"いつも\"はノートを開いてい"
"るか閉じているかにかかわらずダウンロードをします。"
msgid "Always" msgid "Always"
msgstr "" msgstr "いつも"
msgid "Manual" msgid "Manual"
msgstr "" msgstr "手動"
msgid "Auto" msgid "Auto"
msgstr "" msgstr "自動"
msgid "Max concurrent connections" msgid "Max concurrent connections"
msgstr "" msgstr "最大同時接続数"
msgid "Language" msgid "Language"
msgstr "言語" msgstr "言語"
@@ -1451,6 +1492,12 @@ msgstr "明るい"
msgid "Dark" msgid "Dark"
msgstr "暗い" msgstr "暗い"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "未完のToDoをリストの上部に表示" msgstr "未完のToDoをリストの上部に表示"
@@ -1463,9 +1510,8 @@ msgstr "ノートのソート方法"
msgid "Reverse sort order" msgid "Reverse sort order"
msgstr "逆順に並び替え" msgstr "逆順に並び替え"
#, fuzzy
msgid "Sort notebooks by" msgid "Sort notebooks by"
msgstr "ノートのソート方法" msgstr "ノートブックのソート方法"
msgid "Save geo-location with notes" msgid "Save geo-location with notes"
msgstr "ノートに位置情報を保存" msgstr "ノートに位置情報を保存"
@@ -1483,41 +1529,44 @@ msgid "When creating a new note:"
msgstr "新しいノートを作成した際:" msgstr "新しいノートを作成した際:"
msgid "Enable soft breaks" msgid "Enable soft breaks"
msgstr "" msgstr "ソフトブレークを有効にする"
#, fuzzy
msgid "Enable math expressions" msgid "Enable math expressions"
msgstr "暗号化を有効にする" msgstr "数式表現を有効にする"
msgid "Enable ==mark== syntax" msgid "Enable ==mark== syntax"
msgstr "" msgstr "==ハイライト==構文を有効にする"
msgid "Enable footnotes" msgid "Enable footnotes"
msgstr "" msgstr "脚注を有効にする"
msgid "Enable table of contents extension" msgid "Enable table of contents extension"
msgstr "" msgstr "目次拡張を有効にする"
msgid "Enable ~sub~ syntax" msgid "Enable ~sub~ syntax"
msgstr "" msgstr "~下付きテキスト~構文を有効にする"
msgid "Enable ^sup^ syntax" msgid "Enable ^sup^ syntax"
msgstr "" msgstr "^上付きテキスト^構文を有効にする"
msgid "Enable deflist syntax" msgid "Enable deflist syntax"
msgstr "" msgstr "定義リスト構文を有効にする"
msgid "Enable abbreviation syntax" msgid "Enable abbreviation syntax"
msgstr "" msgstr "略語構文を有効にする"
msgid "Enable markdown emoji" msgid "Enable markdown emoji"
msgstr "" msgstr "マークダウン絵文字を有効にする"
msgid "Enable ++insert++ syntax" msgid "Enable ++insert++ syntax"
msgstr "" msgstr "++追加++構文を有効にする"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr "MultiMarkdownのテーブル拡張を有効にする"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "~下付きテキスト~構文を有効にする"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "トレイアイコンの表示" msgstr "トレイアイコンの表示"
@@ -1587,9 +1636,6 @@ msgstr ""
"このエディターコマンド(と引数)はノートを開く際に使用されます。空欄の場合は" "このエディターコマンド(と引数)はノートを開く際に使用されます。空欄の場合は"
"既定のエディターを自動的に検出します。" "既定のエディターを自動的に検出します。"
msgid "Show advanced options"
msgstr "詳細な設定の表示"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "TLS証明書のカスタマイズ" msgstr "TLS証明書のカスタマイズ"
@@ -1607,45 +1653,45 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "TLS証明書のエラーを無視" msgstr "TLS証明書のエラーを無視"
#, fuzzy msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "暗号化を有効にする" msgstr "ノートの履歴を有効にする"
msgid "days" msgid "days"
msgstr "" msgstr ""
#, javascript-format #, javascript-format
msgid "%d days" msgid "%d days"
msgstr "" msgstr "%d 日"
msgid "Keep note history for" msgid "Keep note history for"
msgstr "" msgstr "ノート履歴の保存期間"
#, javascript-format #, javascript-format
msgid "Invalid option value: \"%s\". Possible values are: %s." msgid "Invalid option value: \"%s\". Possible values are: %s."
msgstr "無効な設定値: \"%s\"。有効な値は: %sです。" msgstr "無効な設定値: \"%s\"。有効な値は: %sです。"
#, fuzzy
msgid "General" msgid "General"
msgstr "全般のオプション" msgstr "全般"
#, fuzzy
msgid "Synchronisation" msgid "Synchronisation"
msgstr "同期状況" msgstr "同期"
msgid "Appearance" msgid "Appearance"
msgstr "" msgstr "スタイル"
#, fuzzy
msgid "Note" msgid "Note"
msgstr "ノートブック" msgstr "ノート"
msgid "Plugins" msgid "Plugins"
msgstr "" msgstr "プラグイン"
#, fuzzy
msgid "Application" msgid "Application"
msgstr "場所" msgstr "アプリケーション"
#, javascript-format #, javascript-format
msgid "The tag \"%s\" already exists. Please choose a different name." msgid "The tag \"%s\" already exists. Please choose a different name."
@@ -1695,7 +1741,7 @@ msgid "Please specify the notebook where the notes should be imported to."
msgstr "ノートをどのノートブックにインポートするのか指定してください。" msgstr "ノートをどのノートブックにインポートするのか指定してください。"
msgid "Restored Notes" msgid "Restored Notes"
msgstr "" msgstr "復元されたノート"
msgid "Items that cannot be synchronised" msgid "Items that cannot be synchronised"
msgstr "同期ができなかったアイテム" msgstr "同期ができなかったアイテム"
@@ -1709,23 +1755,25 @@ msgstr ""
"のようなアイテムを探すには、タイトルまたはID(上記の括弧内に表示されている)で" "のようなアイテムを探すには、タイトルまたはID(上記の括弧内に表示されている)で"
"検索してください。" "検索してください。"
#, fuzzy, javascript-format #, javascript-format
msgid "%s (%s) could not be uploaded: %s" msgid "%s (%s) could not be uploaded: %s"
msgstr "次のファイルは開くことができません:%s" msgstr "%s (%s)はアップロードできませんでした:%s"
#, fuzzy, javascript-format #, javascript-format
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "次のファイルは開くことができません:%s" msgstr "アイテム \"%s\" はダウンロードできませんでした:%s"
#, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
msgstr "同期ができなかったアイテム" msgstr "復号ができなかったアイテム"
msgid "" msgid ""
"Joplin failed to decrypt these items multiple times, possibly because they " "Joplin failed to decrypt these items multiple times, possibly because they "
"are corrupted or too large. These items will remain on the device but Joplin " "are corrupted or too large. These items will remain on the device but Joplin "
"will no longer attempt to decrypt them." "will no longer attempt to decrypt them."
msgstr "" msgstr ""
"Joplinはアイテムが破損もしくは大きすぎるため、これらのアイテムの復号化に複数"
"回失敗しました。これらのアイテムはデバイス上に残りますが、Joplinはこれらの復"
"号化は行いません。"
msgid "Sync status (synced items / total items)" msgid "Sync status (synced items / total items)"
msgstr "同期状況 (同期済/総数)" msgstr "同期状況 (同期済/総数)"
@@ -1766,24 +1814,20 @@ msgstr "カメラ使用の許可"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "カメラを使用するには権限が必要です。" msgstr "カメラを使用するには権限が必要です。"
#, fuzzy
msgid "You currently have no notebooks."
msgstr "選択中のノートまたはノートブックを削除"
#, fuzzy
msgid "Create a notebook"
msgstr "あたらしいノートブックを作成します。"
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "ノートがありません。(+)ボタンを押して新しいノートを作成してください。" msgstr "ノートがありません。(+)ボタンを押して新しいノートを作成してください。"
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "ノートを削除しますか?" msgstr "ノートを削除しますか?"
msgid "Log"
msgstr "ログ"
msgid "Export Debug Report"
msgstr "デバッグレポートの出力"
msgid "Encryption Config"
msgstr "暗号化の設定"
msgid "Configuration"
msgstr "設定"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "ノートブックへ移動..." msgstr "ノートブックへ移動..."
@@ -1806,8 +1850,32 @@ msgstr "日付の選択"
msgid "Confirm" msgid "Confirm"
msgstr "確認" msgstr "確認"
msgid "Cancel synchronisation" #, javascript-format
msgstr "同期の中止" msgid "Notebook: %s"
msgstr "ノートブック: %s"
msgid "Encrypted notebooks cannot be renamed"
msgstr "暗号化したアイテムはリネームできません"
msgid "New Notebook"
msgstr "新しいノートブック"
msgid "Configuration"
msgstr "設定"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "復号中のアイテム: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "取得中のリソース: %d/%d"
msgid "All notes"
msgstr "すべてのノート"
msgid "Notebooks"
msgstr "ノートブック"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "確認中...お待ちください。" msgstr "確認中...お待ちください。"
@@ -1849,9 +1917,51 @@ msgstr "新しいタグ:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "新しいタグを入力するか、リストから選択してください" msgstr "新しいタグを入力するか、リストから選択してください"
#, fuzzy msgid "Warning"
msgstr "警告"
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
"ファイルシステムの同期を使うには、外部ストレージへの書き込み権限が必要です。"
msgid "Information"
msgstr "情報"
msgid "Encryption Config"
msgstr "暗号化の設定"
msgid "Tools"
msgstr "ツール"
msgid "Sync Status"
msgstr "同期の状態"
msgid "Log"
msgstr "ログ"
msgid "Creating report..."
msgstr "レポート を作成中..."
msgid "Export Debug Report"
msgstr "デバッグレポートの出力"
msgid "Fixing search index..."
msgstr "検索インデックスの修正中..."
msgid "Fix search index"
msgstr "検索インデックスの修正"
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
"検索に問題がある場合は、これを利用して検索インデックスの再構築を行います。"
"ノートの数に依存して、時間がかかる場合があります。"
msgid "More information" msgid "More information"
msgstr "設定" msgstr "詳細情報"
msgid "" msgid ""
"To work correctly, the app needs the following permissions. Please enable " "To work correctly, the app needs the following permissions. Please enable "
@@ -1878,18 +1988,17 @@ msgstr "JoplinのWebサイト"
#, javascript-format #, javascript-format
msgid "Database v%s" msgid "Database v%s"
msgstr "" msgstr "データベース v%s"
#, fuzzy, javascript-format #, javascript-format
msgid "FTS enabled: %d" msgid "FTS enabled: %d"
msgstr "削除予定: %d" msgstr "FTS有効: %d"
msgid "Login with Dropbox" msgid "Login with Dropbox"
msgstr "Dropboxでログイン" msgstr "Dropboxでログイン"
#, fuzzy
msgid "Enter code here" msgid "Enter code here"
msgstr "コマンドラインモードに入" msgstr "コードをここに入"
#, javascript-format #, javascript-format
msgid "Master Key %s" msgid "Master Key %s"
@@ -1915,6 +2024,9 @@ msgstr "ノートブックは保存できませんでした:%s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "ノートブックの編集" msgstr "ノートブックの編集"
msgid "Enter notebook title"
msgstr "ノートブックのタイトルを入力"
msgid "Show all" msgid "Show all"
msgstr "すべて表示" msgstr "すべて表示"
@@ -1938,10 +2050,31 @@ msgstr "ID %s のアイテムはありません"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "Joplinモバイルアプリは次のタイプのリンクをまだサポートしていません: %s" msgstr "Joplinモバイルアプリは次のタイプのリンクをまだサポートしていません: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "プロトコル \"%s\" でのリンクはサポートされていません"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "サポートされていない画像の形式: %s" msgstr "サポートされていない画像の形式: %s"
#, javascript-format
msgid "Updated: %s"
msgstr "アップデート: %s"
msgid "View on map"
msgstr "地図上に表示"
msgid "Go to source URL"
msgstr "ソースURLに行く"
#, fuzzy
msgid "Attach..."
msgstr "添付..."
msgid "Choose an option"
msgstr "オプションを選択"
msgid "Take photo" msgid "Take photo"
msgstr "写真を撮影する" msgstr "写真を撮影する"
@@ -1960,23 +2093,19 @@ msgstr "ノートに変換"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "ToDoに変換" msgstr "ToDoに変換"
msgid "Hide metadata" msgid "Properties"
msgstr "メタデータを隠す" msgstr "プロパティ"
msgid "Show metadata" #, fuzzy
msgstr "メタデータを表示" msgid "Add body"
msgstr "ボディを追加"
msgid "View on map"
msgstr "地図上に表示"
msgid "Go to source URL"
msgstr "ソースURLに行く"
msgid "Edit" msgid "Edit"
msgstr "編集" msgstr "編集"
msgid "Delete notebook" #, fuzzy
msgstr "ノートブックを削除" msgid "Add title"
msgstr "タイトルを追加"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "OneDriveログイン" msgstr "OneDriveログイン"
@@ -1984,20 +2113,37 @@ msgstr "OneDriveログイン"
msgid "Search" msgid "Search"
msgstr "検索" msgstr "検索"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "カメラ使用の許可"
msgstr ""
"(+)ボタンを押してノートやノートブックを作成してください。サイドメニューからあ"
"なたのノートブックにアクセスができます。"
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "同期の中止"
"ノートブックがありません。(+)をクリックして新しいノートブックを作成してくださ"
"い。"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "ようこそ" #~ msgstr "メタデータを隠す"
#~ msgid "Show metadata"
#~ msgstr "メタデータを表示"
#~ msgid "Delete notebook"
#~ msgstr "ノートブックを削除"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "(+)ボタンを押してノートやノートブックを作成してください。サイドメニューか"
#~ "らあなたのノートブックにアクセスができます。"
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "ノートブックがありません。(+)をクリックして新しいノートブックを作成してく"
#~ "ださい。"
#~ msgid "Welcome"
#~ msgstr "ようこそ"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "それぞれのタグをカンマ(,)で区切ってください。" #~ msgstr "それぞれのタグをカンマ(,)で区切ってください。"
@@ -2015,10 +2161,6 @@ msgstr "ようこそ"
#~ "ファイルシステム同期の有効時に同期を行うパスです。`sync.target`も参考にし" #~ "ファイルシステム同期の有効時に同期を行うパスです。`sync.target`も参考にし"
#~ "てください。" #~ "てください。"
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "JoplinのWebサイト"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "状態: \"%s\"." #~ msgstr "状態: \"%s\"."
@@ -2071,9 +2213,6 @@ msgstr "ようこそ"
#~ msgid "Exit the application." #~ msgid "Exit the application."
#~ msgstr "アプリケーションを終了する" #~ msgstr "アプリケーションを終了する"
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "選択中のノートまたはノートブックを削除"
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "ToDoを完了/未完に設定" #~ msgstr "ToDoを完了/未完に設定"

View File

@@ -353,6 +353,23 @@ msgstr ""
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "" msgstr ""
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -470,6 +487,10 @@ msgstr ""
msgid "Fatal error:" msgid "Fatal error:"
msgstr "" msgstr ""
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -551,6 +572,25 @@ msgstr ""
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, javascript-format
msgid "Revision: %s (%s)"
msgstr ""
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "" msgstr ""
@@ -567,6 +607,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "" msgstr ""
@@ -610,12 +653,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "" msgstr ""
@@ -643,6 +692,9 @@ msgstr ""
msgid "Website and documentation" msgid "Website and documentation"
msgstr "" msgstr ""
msgid "Joplin Forum"
msgstr ""
msgid "Make a donation" msgid "Make a donation"
msgstr "" msgstr ""
@@ -824,8 +876,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -866,6 +918,9 @@ msgstr ""
msgid "Set alarm:" msgid "Set alarm:"
msgstr "" msgstr ""
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "" msgstr ""
@@ -900,6 +955,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "" msgstr ""
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -969,9 +1027,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "" msgstr ""
msgid "Tags"
msgstr ""
msgid "Set alarm" msgid "Set alarm"
msgstr "" msgstr ""
@@ -982,9 +1037,6 @@ msgstr ""
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1060,17 +1112,6 @@ msgstr ""
msgid "Rename" msgid "Rename"
msgstr "" msgstr ""
msgid "Notebooks"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
@@ -1334,6 +1375,12 @@ msgstr ""
msgid "Dark" msgid "Dark"
msgstr "" msgstr ""
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "" msgstr ""
@@ -1400,6 +1447,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1462,9 +1512,6 @@ msgid ""
"If none is provided it will try to auto-detect the default editor." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
msgid "Show advanced options"
msgstr ""
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1478,6 +1525,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "" msgstr ""
@@ -1626,24 +1678,18 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
msgid "You currently have no notebooks."
msgstr ""
msgid "Create a notebook"
msgstr ""
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "" msgstr ""
msgid "Log"
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Configuration"
msgstr ""
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "" msgstr ""
@@ -1666,7 +1712,31 @@ msgstr ""
msgid "Confirm" msgid "Confirm"
msgstr "" msgstr ""
msgid "Cancel synchronisation" #, javascript-format
msgid "Notebook: %s"
msgstr ""
msgid "Encrypted notebooks cannot be renamed"
msgstr ""
msgid "New Notebook"
msgstr ""
msgid "Configuration"
msgstr ""
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr ""
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr ""
msgid "All notes"
msgstr ""
msgid "Notebooks"
msgstr "" msgstr ""
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1702,6 +1772,46 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
msgid "Information"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Tools"
msgstr ""
msgid "Sync Status"
msgstr ""
msgid "Log"
msgstr ""
msgid "Creating report..."
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
msgid "More information" msgid "More information"
msgstr "" msgstr ""
@@ -1762,6 +1872,9 @@ msgstr ""
msgid "Edit notebook" msgid "Edit notebook"
msgstr "" msgstr ""
msgid "Enter notebook title"
msgstr ""
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1785,10 +1898,30 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Updated: %s"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr ""
msgid "Attach..."
msgstr ""
msgid "Choose an option"
msgstr ""
msgid "Take photo" msgid "Take photo"
msgstr "" msgstr ""
@@ -1807,22 +1940,16 @@ msgstr ""
msgid "Convert to todo" msgid "Convert to todo"
msgstr "" msgstr ""
msgid "Hide metadata" msgid "Properties"
msgstr "" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr ""
msgid "View on map"
msgstr ""
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "" msgstr ""
msgid "Delete notebook" msgid "Add title"
msgstr "" msgstr ""
msgid "Login with OneDrive" msgid "Login with OneDrive"
@@ -1830,14 +1957,3 @@ msgstr ""
msgid "Search" msgid "Search"
msgstr "" msgstr ""
msgid ""
"Click on the (+) button to create a new note or notebook. Click on the side "
"menu to access your existing notebooks."
msgstr ""
msgid "You currently have no notebook. Create one by clicking on (+) button."
msgstr ""
msgid "Welcome"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -388,6 +388,23 @@ msgstr "Slett notat?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Søker etter angitt <pattern> i alle notatene." msgstr "Søker etter angitt <pattern> i alle notatene."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -522,6 +539,10 @@ msgstr "Skriv `joplin help` for brukerinformasjon."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Kritisk feil:" msgstr "Kritisk feil:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Applikasjonen er autorisert - du kan nå lukke denne nettleserenfanen." msgstr "Applikasjonen er autorisert - du kan nå lukke denne nettleserenfanen."
@@ -618,6 +639,27 @@ msgstr "Krypteringsvalg"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web Clipper-innstillinger" msgstr "Web Clipper-innstillinger"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Sett inn dato/tid"
#, fuzzy
msgid "Open template directory"
msgstr "Joplin-eksportert katalog"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -634,6 +676,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Se etter oppdatering..." msgstr "Se etter oppdatering..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importer" msgstr "Importer"
@@ -677,12 +722,18 @@ msgstr "Kursiv"
msgid "Link" msgid "Link"
msgstr "Lenke" msgstr "Lenke"
msgid "Code"
msgstr "Kode"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Sett inn dato/tid" msgstr "Sett inn dato/tid"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Rediger i ekstern editor" msgstr "Rediger i ekstern editor"
msgid "Tags"
msgstr "Merkelapper"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Søk i alle notater" msgstr "Søk i alle notater"
@@ -710,6 +761,10 @@ msgstr "&Hjelp"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Nettsted og dokumentasjon" msgstr "Nettsted og dokumentasjon"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Gi et bidrag" msgstr "Gi et bidrag"
@@ -912,8 +967,8 @@ msgstr ""
"vil siden bli lastet ned via synkronisering." "vil siden bli lastet ned via synkronisering."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"For mer informasjon om ende-til-ende-kryptering (E2EE) og råd om hvordan du " "For mer informasjon om ende-til-ende-kryptering (E2EE) og råd om hvordan du "
"aktiverer det kan du sjekke dokumentasjonen:" "aktiverer det kan du sjekke dokumentasjonen:"
@@ -958,6 +1013,9 @@ msgstr "Gi nytt navn til merkelapp:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Angi alarm:" msgstr "Angi alarm:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Visning" msgstr "Visning"
@@ -995,6 +1053,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Notatliste" msgstr "Notatliste"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1066,9 +1127,6 @@ msgstr "Sett inn hyperlenke"
msgid "Attach file" msgid "Attach file"
msgstr "Legg ved fil" msgstr "Legg ved fil"
msgid "Tags"
msgstr "Merkelapper"
msgid "Set alarm" msgid "Set alarm"
msgstr "Angi alarm" msgstr "Angi alarm"
@@ -1079,9 +1137,6 @@ msgstr "I: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hyperlenke" msgstr "Hyperlenke"
msgid "Code"
msgstr "Kode"
msgid "Numbered List" msgid "Numbered List"
msgstr "Nummerert liste" msgstr "Nummerert liste"
@@ -1161,17 +1216,6 @@ msgstr "Slett"
msgid "Rename" msgid "Rename"
msgstr "Gi nytt navn" msgstr "Gi nytt navn"
msgid "Notebooks"
msgstr "Notatbøker"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Dekrypterer elementer: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Henter ressurser: %d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Velg hvor synkroniseringsstatusen skal eksporteres til" msgstr "Velg hvor synkroniseringsstatusen skal eksporteres til"
@@ -1448,6 +1492,12 @@ msgstr "Lys"
msgid "Dark" msgid "Dark"
msgstr "Mørk" msgstr "Mørk"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Uferdige gjøremål på topp" msgstr "Uferdige gjøremål på topp"
@@ -1518,6 +1568,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Vis systemmenyikon" msgstr "Vis systemmenyikon"
@@ -1588,9 +1641,6 @@ msgstr ""
"Teksteditor som skal brukes til å åpne et notat. Hvis det ikke er satt vil " "Teksteditor som skal brukes til å åpne et notat. Hvis det ikke er satt vil "
"den prøve å automatisk velge standardprogram." "den prøve å automatisk velge standardprogram."
msgid "Show advanced options"
msgstr "Vis avanserte innstillinger"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Egendefinerte TLS-sertifikater" msgstr "Egendefinerte TLS-sertifikater"
@@ -1608,6 +1658,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorer TLS-sertifikatfeil" msgstr "Ignorer TLS-sertifikatfeil"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Liste over innhold" msgstr "Liste over innhold"
@@ -1763,24 +1818,20 @@ msgstr "Tillatelse til å bruke kamera"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Tillatelse til å bruke kamera er nødvendig." msgstr "Tillatelse til å bruke kamera er nødvendig."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ingen aktiv notatbok."
#, fuzzy
msgid "Create a notebook"
msgstr "Oppretter en ny notatbok."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Det finnes enda ingen notater. Lag en ved å klikke på (+)-knappen." msgstr "Det finnes enda ingen notater. Lag en ved å klikke på (+)-knappen."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Slett disse notatene?" msgstr "Slett disse notatene?"
msgid "Log"
msgstr "Logg"
msgid "Export Debug Report"
msgstr "Eksporter feilsøkingsrapport"
msgid "Encryption Config"
msgstr "Krypteringsinnstillinger"
msgid "Configuration"
msgstr "Konfigurasjon"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Flytt til notatbok..." msgstr "Flytt til notatbok..."
@@ -1803,8 +1854,35 @@ msgstr "Velg dato"
msgid "Confirm" msgid "Confirm"
msgstr "Bekreft" msgstr "Bekreft"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Avbryt synkronisering" msgid "Notebook: %s"
msgstr "Notatbøker"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Krypterte elementer kan ikke modifiseres"
#, fuzzy
msgid "New Notebook"
msgstr "Ny notatbok"
msgid "Configuration"
msgstr "Konfigurasjon"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Dekrypterer elementer: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Henter ressurser: %d"
#, fuzzy
msgid "All notes"
msgstr "notat"
msgid "Notebooks"
msgstr "Notatbøker"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Sjekker… Vennligst vent." msgstr "Sjekker… Vennligst vent."
@@ -1846,6 +1924,50 @@ msgstr "Nye merkelapper:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Skriv inn nye merkelapper eller velg fra listen" msgstr "Skriv inn nye merkelapper eller velg fra listen"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Konfigurasjon"
msgid "Encryption Config"
msgstr "Krypteringsinnstillinger"
#, fuzzy
msgid "Tools"
msgstr "&Verktøy"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Logg"
#, fuzzy
msgid "Creating report..."
msgstr "Oppretter nytt %s..."
msgid "Export Debug Report"
msgstr "Eksporter feilsøkingsrapport"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Konfigurasjon" msgstr "Konfigurasjon"
@@ -1911,6 +2033,10 @@ msgstr "Denne notatboken kunne ikke lagres: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Rediger notatbok" msgstr "Rediger notatbok"
#, fuzzy
msgid "Enter notebook title"
msgstr "Tittel på notatbok:"
msgid "Show all" msgid "Show all"
msgstr "Vis alle" msgstr "Vis alle"
@@ -1934,10 +2060,32 @@ msgstr "Ingen elementer med ID %s"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "Joplins mobilapp støtter for tiden ikke denne type linker: %s" msgstr "Joplins mobilapp støtter for tiden ikke denne type linker: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Bildetypen er ikke støttet: %s" msgstr "Bildetypen er ikke støttet: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Oppdatert: %d."
msgid "View on map"
msgstr "Vis på kart"
msgid "Go to source URL"
msgstr "Gå til kilde-URL"
#, fuzzy
msgid "Attach..."
msgstr "Søk..."
#, fuzzy
msgid "Choose an option"
msgstr "Vis avanserte innstillinger"
msgid "Take photo" msgid "Take photo"
msgstr "Ta bilde" msgstr "Ta bilde"
@@ -1956,23 +2104,19 @@ msgstr "Konverter til notat"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Konverter til gjøremål" msgstr "Konverter til gjøremål"
msgid "Hide metadata" #, fuzzy
msgstr "Skjul metadata" msgid "Properties"
msgstr "Notategenskaper"
msgid "Show metadata" msgid "Add body"
msgstr "Vis metadata" msgstr ""
msgid "View on map"
msgstr "Vis på kart"
msgid "Go to source URL"
msgstr "Gå til kilde-URL"
msgid "Edit" msgid "Edit"
msgstr "Rediger" msgstr "Rediger"
msgid "Delete notebook" #, fuzzy
msgstr "Slett notatbok" msgid "Add title"
msgstr "tittel"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Innlogging med OneDrive" msgstr "Innlogging med OneDrive"
@@ -1980,18 +2124,35 @@ msgstr "Innlogging med OneDrive"
msgid "Search" msgid "Search"
msgstr "Søk" msgstr "Søk"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Tillatelse til å bruke kamera"
msgstr ""
"Klikk på (+)-knappen for å lage et nytt notat eller en ny notatbok. Klikk på "
"sidepanelet for tilgang til dine eksisterende notatbøker."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "Du har enda ingen notatbok. Opprett en ved å klikke på (+)-knappen." #~ msgstr "Avbryt synkronisering"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Velkommen" #~ msgstr "Skjul metadata"
#~ msgid "Show metadata"
#~ msgstr "Vis metadata"
#~ msgid "Delete notebook"
#~ msgstr "Slett notatbok"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Klikk på (+)-knappen for å lage et nytt notat eller en ny notatbok. Klikk "
#~ "på sidepanelet for tilgang til dine eksisterende notatbøker."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Du har enda ingen notatbok. Opprett en ved å klikke på (+)-knappen."
#~ msgid "Welcome"
#~ msgstr "Velkommen"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separer hver merkelapp med komma." #~ msgstr "Separer hver merkelapp med komma."
@@ -2011,7 +2172,3 @@ msgstr "Velkommen"
#~ msgstr "" #~ msgstr ""
#~ "Stien som skal synkroniseres når filsystemsynkronisering er aktivert. Se " #~ "Stien som skal synkroniseres når filsystemsynkronisering er aktivert. Se "
#~ "`sync.target`." #~ "`sync.target`."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"

View File

@@ -394,6 +394,23 @@ msgstr "Notitie verwijderen?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Zoektermen voor het opgegeven <pattern> in alle notities." msgstr "Zoektermen voor het opgegeven <pattern> in alle notities."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -531,6 +548,10 @@ msgstr "Toont gebruiksinformatie."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Fatale fout:" msgstr "Fatale fout:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "De applicatie is geauthenticeerd - U kan deze tab sluiten." msgstr "De applicatie is geauthenticeerd - U kan deze tab sluiten."
@@ -631,6 +652,25 @@ msgstr "Versleutelopties"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -648,6 +688,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "" msgstr ""
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importeer" msgstr "Importeer"
@@ -694,12 +737,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Tags"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Zoek in alle notities" msgstr "Zoek in alle notities"
@@ -730,6 +779,10 @@ msgstr "Help"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Website en documentatie" msgstr "Website en documentatie"
#, fuzzy
msgid "Joplin Forum"
msgstr "Exporteer Evernote bestanden"
#, fuzzy #, fuzzy
msgid "Make a donation" msgid "Make a donation"
msgstr "Website en documentatie" msgstr "Website en documentatie"
@@ -927,8 +980,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -973,6 +1026,9 @@ msgstr "Hernoem"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Stel melding in:" msgstr "Stel melding in:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -1012,6 +1068,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Notitieboeken" msgstr "Notitieboeken"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1083,9 +1142,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Voeg bestand toe" msgstr "Voeg bestand toe"
msgid "Tags"
msgstr "Tags"
msgid "Set alarm" msgid "Set alarm"
msgstr "Zet melding" msgstr "Zet melding"
@@ -1096,9 +1152,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1180,17 +1233,6 @@ msgstr "Verwijderen"
msgid "Rename" msgid "Rename"
msgstr "Hernoem" msgstr "Hernoem"
msgid "Notebooks"
msgstr "Notitieboeken"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Opgehaalde items: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Middelen: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Selecteer waar de synchronisatie status naar geëxporteerd moet worden" msgstr "Selecteer waar de synchronisatie status naar geëxporteerd moet worden"
@@ -1474,6 +1516,12 @@ msgstr "Licht"
msgid "Dark" msgid "Dark"
msgstr "Donker" msgstr "Donker"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
#, fuzzy #, fuzzy
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Toon onvoltooide to-do's aan de top van de lijsten" msgstr "Toon onvoltooide to-do's aan de top van de lijsten"
@@ -1547,6 +1595,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "" msgstr ""
@@ -1615,9 +1666,6 @@ msgstr ""
"geen meegegeven wordt, zal het programma de standaard editor proberen te " "geen meegegeven wordt, zal het programma de standaard editor proberen te "
"detecteren. " "detecteren. "
msgid "Show advanced options"
msgstr "Toon geavanceerde opties"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1631,6 +1679,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Schakel encryptie in" msgstr "Schakel encryptie in"
@@ -1792,6 +1845,14 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Verwijder de geselecteerde notitie of het geselecteerde notitieboek."
#, fuzzy
msgid "Create a notebook"
msgstr "Maakt een nieuw notitieboek aan."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
"Er zijn momenteel geen notities. Maak een notitie door op (+) te klikken." "Er zijn momenteel geen notities. Maak een notitie door op (+) te klikken."
@@ -1799,18 +1860,6 @@ msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Deze notities verwijderen?" msgstr "Deze notities verwijderen?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Exporteer debug rapport"
msgid "Encryption Config"
msgstr "Encryptie configuratie"
msgid "Configuration"
msgstr "Configuratie"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Verplaats naar notitieboek..." msgstr "Verplaats naar notitieboek..."
@@ -1835,8 +1884,35 @@ msgstr "Selecteer datum"
msgid "Confirm" msgid "Confirm"
msgstr "Bevestig" msgstr "Bevestig"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Annuleer synchronisatie" msgid "Notebook: %s"
msgstr "Notitieboeken"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Versleutelde items kunnen niet aangepast worden"
#, fuzzy
msgid "New Notebook"
msgstr "Nieuw notitieboek"
msgid "Configuration"
msgstr "Configuratie"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Opgehaalde items: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Middelen: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "Nieuwe notitie"
msgid "Notebooks"
msgstr "Notitieboeken"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1874,6 +1950,50 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Configuratie"
msgid "Encryption Config"
msgstr "Encryptie configuratie"
#, fuzzy
msgid "Tools"
msgstr "Tools"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Notities importeren..."
msgid "Export Debug Report"
msgstr "Exporteer debug rapport"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Configuratie" msgstr "Configuratie"
@@ -1937,6 +2057,10 @@ msgstr "Het notitieboek kon niet opgeslaan worden: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Bewerk notitieboek" msgstr "Bewerk notitieboek"
#, fuzzy
msgid "Enter notebook title"
msgstr "Notitieboek titel:"
msgid "Show all" msgid "Show all"
msgstr "" msgstr ""
@@ -1960,10 +2084,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Afbeeldingstype %s wordt niet ondersteund" msgstr "Afbeeldingstype %s wordt niet ondersteund"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Bijgewerkt: %d."
msgid "View on map"
msgstr "Toon op de kaart"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Zoeken"
#, fuzzy
msgid "Choose an option"
msgstr "Toon geavanceerde opties"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Voeg foto toe" msgstr "Voeg foto toe"
@@ -1983,23 +2129,18 @@ msgstr "Converteer naar notitie"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Converteer naar to-do" msgstr "Converteer naar to-do"
msgid "Hide metadata" msgid "Properties"
msgstr "Verberg metadata" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Toon metadata"
msgid "View on map"
msgstr "Toon op de kaart"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Bewerk" msgstr "Bewerk"
msgid "Delete notebook" #, fuzzy
msgstr "Verwijder notitieboek" msgid "Add title"
msgstr "Untitled"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Log in met OneDrive" msgstr "Log in met OneDrive"
@@ -2007,20 +2148,33 @@ msgstr "Log in met OneDrive"
msgid "Search" msgid "Search"
msgstr "Zoeken" msgstr "Zoeken"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Annuleer synchronisatie"
"menu to access your existing notebooks."
msgstr ""
"Klik op de (+) om een nieuwe notitie of een nieuw notitieboek aan te maken. "
"Klik in het menu om uw bestaande notitieboeken te raadplegen."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "" #~ msgstr "Verberg metadata"
"U heeft momenteel geen notitieboek. Maak een notitieboek door op (+) te "
"klikken."
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Welkom" #~ msgstr "Toon metadata"
#~ msgid "Delete notebook"
#~ msgstr "Verwijder notitieboek"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Klik op de (+) om een nieuwe notitie of een nieuw notitieboek aan te "
#~ "maken. Klik in het menu om uw bestaande notitieboeken te raadplegen."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "U heeft momenteel geen notitieboek. Maak een notitieboek door op (+) te "
#~ "klikken."
#~ msgid "Welcome"
#~ msgstr "Welkom"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Scheid iedere tag met een komma." #~ msgstr "Scheid iedere tag met een komma."
@@ -2089,10 +2243,6 @@ msgstr "Welkom"
#~ msgid "Cancel the current command." #~ msgid "Cancel the current command."
#~ msgstr "Annuleer het huidige commando." #~ msgstr "Annuleer het huidige commando."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr ""
#~ "Verwijder de geselecteerde notitie of het geselecteerde notitieboek."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Zet een to-do als voltooid / niet voltooid" #~ msgstr "Zet een to-do als voltooid / niet voltooid"

File diff suppressed because it is too large Load Diff

View File

@@ -398,6 +398,23 @@ msgstr "Usunąć notatkę?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Wyszukuje wskazany <pattern> we wszystkich notatkach." msgstr "Wyszukuje wskazany <pattern> we wszystkich notatkach."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -539,6 +556,10 @@ msgstr "Wpisz `joplin help` dla informacji o użytkowaniu."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Błąd krytyczny:" msgstr "Błąd krytyczny:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Aplikacja została uwierzytelniona - możesz zamknąć kartę przeglądarki." msgstr "Aplikacja została uwierzytelniona - możesz zamknąć kartę przeglądarki."
@@ -637,6 +658,27 @@ msgstr "Opcje szyfrowania"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Opcje Web clipper" msgstr "Opcje Web clipper"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Wstaw stempel czasowy"
#, fuzzy
msgid "Open template directory"
msgstr "Katalog Joplin Export"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -653,6 +695,9 @@ msgstr "Preferencje..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Sprawdź dostępność aktualizacji..." msgstr "Sprawdź dostępność aktualizacji..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Zaimportuj" msgstr "Zaimportuj"
@@ -696,12 +741,18 @@ msgstr "Kursywa"
msgid "Link" msgid "Link"
msgstr "Odnośnik" msgstr "Odnośnik"
msgid "Code"
msgstr "Kod"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Wstaw stempel czasowy" msgstr "Wstaw stempel czasowy"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Edytuj w edytorze zewnętrznym" msgstr "Edytuj w edytorze zewnętrznym"
msgid "Tags"
msgstr "Znaczniki"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Wyszukaj we wszystkich notatkach" msgstr "Wyszukaj we wszystkich notatkach"
@@ -729,6 +780,10 @@ msgstr "&Pomoc"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Strona internetowa i dokumentacja" msgstr "Strona internetowa i dokumentacja"
#, fuzzy
msgid "Joplin Forum"
msgstr "Plik Joplin Export"
msgid "Make a donation" msgid "Make a donation"
msgstr "Przekaż datek" msgstr "Przekaż datek"
@@ -931,8 +986,8 @@ msgstr ""
"pobrane przy synchonizacji." "pobrane przy synchonizacji."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Aby uzyskać informacje o szyfrowaniu po stronie klienta (E2EE) i przykłady " "Aby uzyskać informacje o szyfrowaniu po stronie klienta (E2EE) i przykłady "
"ułatwiające jego uruchomienie, proszę sprawdź dokumentację:" "ułatwiające jego uruchomienie, proszę sprawdź dokumentację:"
@@ -977,6 +1032,9 @@ msgstr "Zmień nazwę znacznika:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Ustaw powiadomienie:" msgstr "Ustaw powiadomienie:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Układ" msgstr "Układ"
@@ -1012,6 +1070,9 @@ msgstr "Odnośnik"
msgid "Note History" msgid "Note History"
msgstr "Historia notatek" msgstr "Historia notatek"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Poprzednie wersje notatki" msgstr "Poprzednie wersje notatki"
@@ -1088,9 +1149,6 @@ msgstr "Wstaw Hyperlink"
msgid "Attach file" msgid "Attach file"
msgstr "Załącz plik" msgstr "Załącz plik"
msgid "Tags"
msgstr "Znaczniki"
msgid "Set alarm" msgid "Set alarm"
msgstr "Ustaw powiadomienie" msgstr "Ustaw powiadomienie"
@@ -1101,9 +1159,6 @@ msgstr "W: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hyperlink" msgstr "Hyperlink"
msgid "Code"
msgstr "Kod"
msgid "Numbered List" msgid "Numbered List"
msgstr "Lista numerowana" msgstr "Lista numerowana"
@@ -1183,17 +1238,6 @@ msgstr "Usuń"
msgid "Rename" msgid "Rename"
msgstr "Zmień nazwę" msgstr "Zmień nazwę"
msgid "Notebooks"
msgstr "Notatniki"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Deszyfrowanie obiektów %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Pobieranie zasobów: %d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Proszę wybrać gdzie powinen zostać eksportowany status synchronizacji" msgstr "Proszę wybrać gdzie powinen zostać eksportowany status synchronizacji"
@@ -1480,6 +1524,12 @@ msgstr "Jasny"
msgid "Dark" msgid "Dark"
msgstr "Ciemny" msgstr "Ciemny"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Nieukończone zadania na górze" msgstr "Nieukończone zadania na górze"
@@ -1546,6 +1596,10 @@ msgstr "Aktywuj składnię ++instert++"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Aktywuj rozszerzenie dla tabeli multimarkdown" msgstr "Aktywuj rozszerzenie dla tabeli multimarkdown"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Aktywuj składnię ~sub~"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Pokaż ikonę w zasobniku systemowym" msgstr "Pokaż ikonę w zasobniku systemowym"
@@ -1619,9 +1673,6 @@ msgstr ""
"aby otwierać notatkę. Jeżeli nie zostanie podana, program spróbuje wykryć " "aby otwierać notatkę. Jeżeli nie zostanie podana, program spróbuje wykryć "
"domyślny edytor." "domyślny edytor."
msgid "Show advanced options"
msgstr "Wyświetl opcje zaawansowane"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Niestandardowe ceryfikaty TLS" msgstr "Niestandardowe ceryfikaty TLS"
@@ -1640,6 +1691,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignoruj błędy certyfikatu TLS" msgstr "Ignoruj błędy certyfikatu TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "Aktywuj historię notatek" msgstr "Aktywuj historię notatek"
@@ -1794,24 +1850,20 @@ msgstr "Uprawenie do użytkowania kamery"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Wymagane uprawenienie do użytkowania kamery." msgstr "Wymagane uprawenienie do użytkowania kamery."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Brak aktywnego notatnika."
#, fuzzy
msgid "Create a notebook"
msgstr "Tworzy nowy notatnik."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Brak notatek. Aby utworzyć, naciśnij przycisk (+)." msgstr "Brak notatek. Aby utworzyć, naciśnij przycisk (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Usunąć notatki?" msgstr "Usunąć notatki?"
msgid "Log"
msgstr "Dziennik"
msgid "Export Debug Report"
msgstr "Raport odpluskwiania eksportu"
msgid "Encryption Config"
msgstr "Konfiguracja szyfrowania"
msgid "Configuration"
msgstr "Konfiguracja"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Przenieś do notatnika..." msgstr "Przenieś do notatnika..."
@@ -1834,8 +1886,35 @@ msgstr "Wybierz datę"
msgid "Confirm" msgid "Confirm"
msgstr "Potwierdź" msgstr "Potwierdź"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Anuluj synchronizację" msgid "Notebook: %s"
msgstr "Notatniki"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Zaszyfrowanie obiekty nie mogą być modyfikowane"
#, fuzzy
msgid "New Notebook"
msgstr "Nowy notatnik"
msgid "Configuration"
msgstr "Konfiguracja"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Deszyfrowanie obiektów %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Pobieranie zasobów: %d"
#, fuzzy
msgid "All notes"
msgstr "notatka"
msgid "Notebooks"
msgstr "Notatniki"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Sprawdzanie... Proszę czekać." msgstr "Sprawdzanie... Proszę czekać."
@@ -1877,6 +1956,50 @@ msgstr "Nowe znaczniki:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Wprowadź nowe znaczniki lub wybierz z listy" msgstr "Wprowadź nowe znaczniki lub wybierz z listy"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Konfiguracja"
msgid "Encryption Config"
msgstr "Konfiguracja szyfrowania"
#, fuzzy
msgid "Tools"
msgstr "&Narzędzia"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Dziennik"
#, fuzzy
msgid "Creating report..."
msgstr "Tworzenie nowego %s..."
msgid "Export Debug Report"
msgstr "Raport odpluskwiania eksportu"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Konfiguracja" msgstr "Konfiguracja"
@@ -1946,6 +2069,10 @@ msgstr "Notatnik nie może zostać zapisany: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Edytuj notatnik" msgstr "Edytuj notatnik"
#, fuzzy
msgid "Enter notebook title"
msgstr "Tytuł notatnika:"
msgid "Show all" msgid "Show all"
msgstr "Pokaż wszystko" msgstr "Pokaż wszystko"
@@ -1970,10 +2097,32 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"Aplikacja mobilna Joplin nie wspiera aktualnie odnośników tego typu: %s" "Aplikacja mobilna Joplin nie wspiera aktualnie odnośników tego typu: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Niewspierany typ obrazu: %s" msgstr "Niewspierany typ obrazu: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Zaaktualizowano: %d."
msgid "View on map"
msgstr "Pokaż na mapie"
msgid "Go to source URL"
msgstr "Idź do adresu źródłowego odnośnika"
#, fuzzy
msgid "Attach..."
msgstr "Wyszukaj..."
#, fuzzy
msgid "Choose an option"
msgstr "Wyświetl opcje zaawansowane"
msgid "Take photo" msgid "Take photo"
msgstr "Wykonaj zdjęcie" msgstr "Wykonaj zdjęcie"
@@ -1992,23 +2141,19 @@ msgstr "Przekonwertuj do notatki"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Przekonwertuj do zadania" msgstr "Przekonwertuj do zadania"
msgid "Hide metadata" #, fuzzy
msgstr "Ukryj metadane" msgid "Properties"
msgstr "Właściwośći notatki"
msgid "Show metadata" msgid "Add body"
msgstr "Pokaż metadane" msgstr ""
msgid "View on map"
msgstr "Pokaż na mapie"
msgid "Go to source URL"
msgstr "Idź do adresu źródłowego odnośnika"
msgid "Edit" msgid "Edit"
msgstr "Edytuj" msgstr "Edytuj"
msgid "Delete notebook" #, fuzzy
msgstr "Usuń notatnik" msgid "Add title"
msgstr "tytuł"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Zaloguj z OneDrive" msgstr "Zaloguj z OneDrive"
@@ -2016,18 +2161,35 @@ msgstr "Zaloguj z OneDrive"
msgid "Search" msgid "Search"
msgstr "Wyszukaj" msgstr "Wyszukaj"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Uprawenie do użytkowania kamery"
msgstr ""
"Naciśnij przycisk (+) aby utworzyć nową notatkę lub notatnik. Naciśnij menu "
"boczne, aby mieć dostęp do istniejących notatników."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "Brak notatników. Utwórz nowy naciskając przycisk (+)." #~ msgstr "Anuluj synchronizację"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Witaj" #~ msgstr "Ukryj metadane"
#~ msgid "Show metadata"
#~ msgstr "Pokaż metadane"
#~ msgid "Delete notebook"
#~ msgstr "Usuń notatnik"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Naciśnij przycisk (+) aby utworzyć nową notatkę lub notatnik. Naciśnij "
#~ "menu boczne, aby mieć dostęp do istniejących notatników."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Brak notatników. Utwórz nowy naciskając przycisk (+)."
#~ msgid "Welcome"
#~ msgstr "Witaj"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Oddziel każdy znacznik przecinkiem." #~ msgstr "Oddziel każdy znacznik przecinkiem."

View File

@@ -8,13 +8,13 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Joplin-CLI 1.0.0\n" "Project-Id-Version: Joplin-CLI 1.0.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"Last-Translator: Renato Nunes Bastos <rnbastos@gmail.com>\n" "Last-Translator: Rafael Teixeira <rto.tinfo@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: pt_BR\n" "Language: pt_BR\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.7\n" "X-Generator: Poedit 2.2.3\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
msgid "To delete a tag, untag the associated notes." msgid "To delete a tag, untag the associated notes."
@@ -60,7 +60,7 @@ msgid "The command \"%s\" is only available in GUI mode"
msgstr "O comando \"%s\" está disponível somente em modo gráfico" msgstr "O comando \"%s\" está disponível somente em modo gráfico"
msgid "Cannot change encrypted item" msgid "Cannot change encrypted item"
msgstr "Não pode mudar um item encriptado" msgstr "Não é possível mudar um item encriptado"
#, javascript-format #, javascript-format
msgid "Missing required argument: %s" msgid "Missing required argument: %s"
@@ -386,6 +386,23 @@ msgstr "Apagar nota?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Procura o padrão <pattern>em todas as notas." msgstr "Procura o padrão <pattern>em todas as notas."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -527,6 +544,10 @@ msgstr "Digite 'joplin help' para informações de uso."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Erro fatal:" msgstr "Erro fatal:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -589,7 +610,7 @@ msgid "Note list"
msgstr "Lista de notas" msgstr "Lista de notas"
msgid "Note title" msgid "Note title"
msgstr "Título da Nota:" msgstr "Título da Nota"
msgid "Note body" msgid "Note body"
msgstr "Corpo da Nota" msgstr "Corpo da Nota"
@@ -625,6 +646,27 @@ msgstr "Opções de Encriptação"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Opções do Web clipper" msgstr "Opções do Web clipper"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Inserir Data e Hora"
#, fuzzy
msgid "Open template directory"
msgstr "Diretório de Exportação do Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -641,6 +683,9 @@ msgstr "Preferências..."
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Verificar atualizações..." msgstr "Verificar atualizações..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importar" msgstr "Importar"
@@ -684,12 +729,18 @@ msgstr "Itálico"
msgid "Link" msgid "Link"
msgstr "Link" msgstr "Link"
msgid "Code"
msgstr "Código"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Inserir Data e Hora" msgstr "Inserir Data e Hora"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Editar com editor externo" msgstr "Editar com editor externo"
msgid "Tags"
msgstr "Tags"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Pesquisar em todas as notas" msgstr "Pesquisar em todas as notas"
@@ -717,11 +768,15 @@ msgstr "&Ajuda"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Website e documentação" msgstr "Website e documentação"
#, fuzzy
msgid "Joplin Forum"
msgstr "Site do Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "Fazer uma doação" msgstr "Fazer uma doação"
msgid "Toggle development tools" msgid "Toggle development tools"
msgstr "" msgstr "Habilitar/Desabilitar ferramentas de desenvolvimento"
#, javascript-format #, javascript-format
msgid "Open %s" msgid "Open %s"
@@ -919,8 +974,8 @@ msgstr ""
"elas serão baixadas via sincronização." "elas serão baixadas via sincronização."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Para mais informações sobre Encriptação ponto-a-ponto (E2EE) e recomendações " "Para mais informações sobre Encriptação ponto-a-ponto (E2EE) e recomendações "
"sobre como habilitar, favor verificar a documentação:" "sobre como habilitar, favor verificar a documentação:"
@@ -964,6 +1019,9 @@ msgstr "Renomear tag:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Definir alarme:" msgstr "Definir alarme:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -999,6 +1057,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Histórico da Nota" msgstr "Histórico da Nota"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "Versões anteriores desta nota" msgstr "Versões anteriores desta nota"
@@ -1072,9 +1133,6 @@ msgstr "Inserir Hiperlink"
msgid "Attach file" msgid "Attach file"
msgstr "Anexar arquivo" msgstr "Anexar arquivo"
msgid "Tags"
msgstr "Tags"
msgid "Set alarm" msgid "Set alarm"
msgstr "Definir alarme" msgstr "Definir alarme"
@@ -1085,9 +1143,6 @@ msgstr "Em: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hiperlink" msgstr "Hiperlink"
msgid "Code"
msgstr "Código"
msgid "Numbered List" msgid "Numbered List"
msgstr "Lista numerada" msgstr "Lista numerada"
@@ -1141,7 +1196,7 @@ msgid "Encryption Options"
msgstr "Opções de Encriptação" msgstr "Opções de Encriptação"
msgid "Clipper Options" msgid "Clipper Options"
msgstr "Opções do clipper" msgstr "Opções do Clipper"
#, javascript-format #, javascript-format
msgid "" msgid ""
@@ -1166,24 +1221,13 @@ msgstr "Excluir"
msgid "Rename" msgid "Rename"
msgstr "Renomear" msgstr "Renomear"
msgid "Notebooks"
msgstr "Cadernos"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Decriptando itens: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Buscando recursos: %d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
"Favor selecionar o local para onde o status de sincronia deveria ser " "Favor selecionar o local para onde o status de sincronia deveria ser "
"exportado" "exportado"
msgid "Retry" msgid "Retry"
msgstr "" msgstr "Tentar novamente"
msgid "Add or remove tags" msgid "Add or remove tags"
msgstr "Adicionar ou remover tags" msgstr "Adicionar ou remover tags"
@@ -1429,15 +1473,18 @@ msgid ""
"In \"Auto\", they are downloaded when you open the note. In \"Always\", all " "In \"Auto\", they are downloaded when you open the note. In \"Always\", all "
"the attachments are downloaded whether you open the note or not." "the attachments are downloaded whether you open the note or not."
msgstr "" msgstr ""
"No modo \"Manual\", os anexos são baixados apenas quando você clica neles. "
"Em \"Automático\", eles são baixados quando você abre a nota. Em \"Sempre\", "
"todos os anexos são baixados independentemente de você abrir a nota ou não."
msgid "Always" msgid "Always"
msgstr "" msgstr "Sempre"
msgid "Manual" msgid "Manual"
msgstr "" msgstr "Manual"
msgid "Auto" msgid "Auto"
msgstr "" msgstr "Automático"
msgid "Max concurrent connections" msgid "Max concurrent connections"
msgstr "" msgstr ""
@@ -1460,6 +1507,12 @@ msgstr "Light"
msgid "Dark" msgid "Dark"
msgstr "Dark" msgstr "Dark"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Mostrar tarefas incompletas no topo" msgstr "Mostrar tarefas incompletas no topo"
@@ -1497,7 +1550,7 @@ msgid "Enable math expressions"
msgstr "Habilitar expressões matemáticas" msgstr "Habilitar expressões matemáticas"
msgid "Enable ==mark== syntax" msgid "Enable ==mark== syntax"
msgstr "Habilitar sintaxe ==marcador== " msgstr "Habilitar sintaxe ==marcador=="
msgid "Enable footnotes" msgid "Enable footnotes"
msgstr "Habilitar notas de rodapé" msgstr "Habilitar notas de rodapé"
@@ -1509,22 +1562,26 @@ msgid "Enable ~sub~ syntax"
msgstr "Habilitar sintaxe ~sub~" msgstr "Habilitar sintaxe ~sub~"
msgid "Enable ^sup^ syntax" msgid "Enable ^sup^ syntax"
msgstr "Habilitar sintaxe ^sup^ " msgstr "Habilitar sintaxe ^sup^"
msgid "Enable deflist syntax" msgid "Enable deflist syntax"
msgstr "Habilitar sintaxe de deflist " msgstr "Habilitar sintaxe de deflist"
msgid "Enable abbreviation syntax" msgid "Enable abbreviation syntax"
msgstr "Habilitar sintaxe de abreviações" msgstr "Habilitar sintaxe de abreviações"
msgid "Enable markdown emoji" msgid "Enable markdown emoji"
msgstr "Habilitar emojis em markdown " msgstr "Habilitar emojis em markdown"
msgid "Enable ++insert++ syntax" msgid "Enable ++insert++ syntax"
msgstr "Habilitar sintaxe ++inserir++ " msgstr "Habilitar sintaxe ++inserir++"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "Habilitar extensão de tabela de multimarkdown " msgstr "Habilitar extensão de tabela de multimarkdown"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "Habilitar sintaxe ~sub~"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Exibir tray icon" msgstr "Exibir tray icon"
@@ -1596,9 +1653,6 @@ msgstr ""
"nota. Se nenhum for indicado, ele tentará detectar automaticamente o editor " "nota. Se nenhum for indicado, ele tentará detectar automaticamente o editor "
"padrão." "padrão."
msgid "Show advanced options"
msgstr "Mostrar opções avançadas"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Certificados TLS customizados" msgstr "Certificados TLS customizados"
@@ -1617,6 +1671,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorar erros de certificados TLS" msgstr "Ignorar erros de certificados TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "Habilitar histórico de notas" msgstr "Habilitar histórico de notas"
@@ -1721,17 +1780,19 @@ msgstr "%s (%s) não pôde ser enviado: %s"
#, javascript-format #, javascript-format
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "Item \"%s\" não pôde ser baixado: %s" msgstr "O item \"%s\" não pôde ser baixado: %s"
#, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
msgstr "Os itens não podem ser sincronizados" msgstr "Os itens não podem ser decriptados"
msgid "" msgid ""
"Joplin failed to decrypt these items multiple times, possibly because they " "Joplin failed to decrypt these items multiple times, possibly because they "
"are corrupted or too large. These items will remain on the device but Joplin " "are corrupted or too large. These items will remain on the device but Joplin "
"will no longer attempt to decrypt them." "will no longer attempt to decrypt them."
msgstr "" msgstr ""
"O Joplin falhou ao tentar decriptar esses múltiplos items, possivelmente "
"porque eles estão corruptos ou são grandes demais. Esses itens permanecerão "
"no dispositivo, porém o Joplin não vai mais tentar decriptá-los."
msgid "Sync status (synced items / total items)" msgid "Sync status (synced items / total items)"
msgstr "Status de sincronização (sincronizados / totais)" msgstr "Status de sincronização (sincronizados / totais)"
@@ -1772,24 +1833,20 @@ msgstr "Permissão para utilizar sua câmera"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "É necessária a sua permissão para utilizar sua câmera." msgstr "É necessária a sua permissão para utilizar sua câmera."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Excluir nota selecionada ou notebook."
#, fuzzy
msgid "Create a notebook"
msgstr "Cria um novo caderno."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Atualmente, não há notas. Crie uma, clicando no botão (+)." msgstr "Atualmente, não há notas. Crie uma, clicando no botão (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Excluir estas notas?" msgstr "Excluir estas notas?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Exportar Relatório de Debug"
msgid "Encryption Config"
msgstr "Configuração de Encriptação"
msgid "Configuration"
msgstr "Configuração"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mover para o caderno..." msgstr "Mover para o caderno..."
@@ -1812,8 +1869,32 @@ msgstr "Selecionar data"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmar" msgstr "Confirmar"
msgid "Cancel synchronisation" #, javascript-format
msgstr "Cancelar sincronização" msgid "Notebook: %s"
msgstr "Caderno: %s"
msgid "Encrypted notebooks cannot be renamed"
msgstr "Cadernos encriptados não podem ser renomeados"
msgid "New Notebook"
msgstr "Novo caderno"
msgid "Configuration"
msgstr "Configuração"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Decriptando itens: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Buscando recursos: %d"
msgid "All notes"
msgstr "Todas as notas"
msgid "Notebooks"
msgstr "Cadernos"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Verificando... Por favor aguarde." msgstr "Verificando... Por favor aguarde."
@@ -1856,9 +1937,49 @@ msgstr "Novas tags:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Digite novsa tags, ou selecione da lista" msgstr "Digite novsa tags, ou selecione da lista"
msgid "Warning"
msgstr "Atenção"
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
msgid "Information"
msgstr "Informação"
msgid "Encryption Config"
msgstr "Configuração de Encriptação"
msgid "Tools"
msgstr "Ferramentas"
msgid "Sync Status"
msgstr "Status de sincronização"
msgid "Log"
msgstr "Log"
#, fuzzy #, fuzzy
msgid "Creating report..."
msgstr "Criando novo %s..."
msgid "Export Debug Report"
msgstr "Exportar Relatório de Debug"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
msgid "More information" msgid "More information"
msgstr "Configuração" msgstr "Mais informações"
msgid "" msgid ""
"To work correctly, the app needs the following permissions. Please enable " "To work correctly, the app needs the following permissions. Please enable "
@@ -1924,6 +2045,9 @@ msgstr "O caderno não pôde ser salvo: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Editar caderno" msgstr "Editar caderno"
msgid "Enter notebook title"
msgstr "Entre o título do caderno"
msgid "Show all" msgid "Show all"
msgstr "Exibir tudo" msgstr "Exibir tudo"
@@ -1947,10 +2071,31 @@ msgstr "Nenhum item com ID %s"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "O app mobile do Joplin não suporta, atualmente, esse tipo de link: %s" msgstr "O app mobile do Joplin não suporta, atualmente, esse tipo de link: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "Links com o protocolo \"%s\" não são suportados"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Tipo de imagem não suportada: %s" msgstr "Tipo de imagem não suportada: %s"
#, javascript-format
msgid "Updated: %s"
msgstr "Atualizado: %s"
msgid "View on map"
msgstr "Ver no mapa"
msgid "Go to source URL"
msgstr "Ir para a URL de origem"
#, fuzzy
msgid "Attach..."
msgstr "Pesquisar..."
msgid "Choose an option"
msgstr "Escolha uma opção"
msgid "Take photo" msgid "Take photo"
msgstr "Tirar foto" msgstr "Tirar foto"
@@ -1969,23 +2114,18 @@ msgstr "Converter para nota"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Converter para tarefa" msgstr "Converter para tarefa"
msgid "Hide metadata" #, fuzzy
msgstr "Ocultar metadados" msgid "Properties"
msgstr "Propriedades da nota"
msgid "Show metadata" msgid "Add body"
msgstr "Exibir metadados" msgstr ""
msgid "View on map"
msgstr "Ver no mapa"
msgid "Go to source URL"
msgstr "Ir para a URL de origem"
msgid "Edit" msgid "Edit"
msgstr "Editar" msgstr "Editar"
msgid "Delete notebook" msgid "Add title"
msgstr "Excluir caderno" msgstr "Adicionar título"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Login com OneDrive" msgstr "Login com OneDrive"
@@ -1993,18 +2133,35 @@ msgstr "Login com OneDrive"
msgid "Search" msgid "Search"
msgstr "Procurar" msgstr "Procurar"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Permissão para utilizar sua câmera"
msgstr ""
"Clique no botão (+) para criar uma nova nota ou caderno. Clique no menu "
"lateral para acessar seus cadernos existentes."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "Você não possui cadernos. Crie um clicando no botão (+)." #~ msgstr "Cancelar sincronização"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Bem-vindo" #~ msgstr "Ocultar metadados"
#~ msgid "Show metadata"
#~ msgstr "Exibir metadados"
#~ msgid "Delete notebook"
#~ msgstr "Excluir caderno"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Clique no botão (+) para criar uma nova nota ou caderno. Clique no menu "
#~ "lateral para acessar seus cadernos existentes."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "Você não possui cadernos. Crie um clicando no botão (+)."
#~ msgid "Welcome"
#~ msgstr "Bem-vindo"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separe cada tag por vírgula." #~ msgstr "Separe cada tag por vírgula."
@@ -2022,13 +2179,6 @@ msgstr "Bem-vindo"
#~ "O caminho para sincronizar, quando a sincronização do sistema de arquivos " #~ "O caminho para sincronizar, quando a sincronização do sistema de arquivos "
#~ "está habilitada. Veja `sync.target`." #~ "está habilitada. Veja `sync.target`."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Site do Joplin"
#~ msgid "Delete notes?"
#~ msgstr "Excluir notas?"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Estado: \"%s\"." #~ msgstr "Estado: \"%s\"."
@@ -2084,9 +2234,6 @@ msgstr "Bem-vindo"
#~ msgid "Exit the application." #~ msgid "Exit the application."
#~ msgstr "Sair da aplicação." #~ msgstr "Sair da aplicação."
#~ msgid "Delete the currently selected note or notebook."
#~ msgstr "Excluir nota selecionada ou notebook."
#~ msgid "Set a to-do as completed / not completed" #~ msgid "Set a to-do as completed / not completed"
#~ msgstr "Marcar uma tarefa como completada / não completada" #~ msgstr "Marcar uma tarefa como completada / não completada"

View File

@@ -357,6 +357,23 @@ msgstr "Ștergeți notița?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "" msgstr ""
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -476,6 +493,10 @@ msgstr "Tastați `joplin help` pentru informații de utilizare."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Eroare fatală:" msgstr "Eroare fatală:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -566,6 +587,25 @@ msgstr "Opțiuni de criptare"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
msgid "Open template directory"
msgstr ""
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -583,6 +623,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Verificați actualizările..." msgstr "Verificați actualizările..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importați" msgstr "Importați"
@@ -628,12 +671,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr "Cod"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Editați într-un editor extern" msgstr "Editați într-un editor extern"
msgid "Tags"
msgstr "Etichete"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Căutați în toate notițele" msgstr "Căutați în toate notițele"
@@ -665,6 +714,10 @@ msgstr "Ajutor"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Website și documentație" msgstr "Website și documentație"
#, fuzzy
msgid "Joplin Forum"
msgstr "Website Joplin"
msgid "Make a donation" msgid "Make a donation"
msgstr "Faceți o donație" msgstr "Faceți o donație"
@@ -847,8 +900,8 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -890,6 +943,9 @@ msgstr "Redenumiți eticheta:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Setați alarma:" msgstr "Setați alarma:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "" msgstr ""
@@ -925,6 +981,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Caiete de notițe" msgstr "Caiete de notițe"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -995,9 +1054,6 @@ msgstr "Introduceți hyperlink"
msgid "Attach file" msgid "Attach file"
msgstr "Atașați fișier" msgstr "Atașați fișier"
msgid "Tags"
msgstr "Etichete"
msgid "Set alarm" msgid "Set alarm"
msgstr "Setați alarma" msgstr "Setați alarma"
@@ -1008,9 +1064,6 @@ msgstr "În: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hyperlink" msgstr "Hyperlink"
msgid "Code"
msgstr "Cod"
msgid "Numbered List" msgid "Numbered List"
msgstr "Listă numerotată" msgstr "Listă numerotată"
@@ -1086,17 +1139,6 @@ msgstr "Ștergeți"
msgid "Rename" msgid "Rename"
msgstr "Redenumiți" msgstr "Redenumiți"
msgid "Notebooks"
msgstr "Caiete de notițe"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Se decriptează itemi: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Resurse: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
@@ -1363,6 +1405,12 @@ msgstr "Deschisă"
msgid "Dark" msgid "Dark"
msgstr "Închisă" msgstr "Închisă"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "" msgstr ""
@@ -1431,6 +1479,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Afișați iconița coșul de gunoi" msgstr "Afișați iconița coșul de gunoi"
@@ -1494,9 +1545,6 @@ msgid ""
"If none is provided it will try to auto-detect the default editor." "If none is provided it will try to auto-detect the default editor."
msgstr "" msgstr ""
msgid "Show advanced options"
msgstr "Afișați opțiunile avansate"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Certificate TLS cusomizate" msgstr "Certificate TLS cusomizate"
@@ -1510,6 +1558,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignoră erorile de certificat TLS" msgstr "Ignoră erorile de certificat TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Activați criptarea" msgstr "Activați criptarea"
@@ -1664,24 +1717,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Niciun caiet de notițe activ."
#, fuzzy
msgid "Create a notebook"
msgstr "Creați caiet de notițe."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Ștergeți aceste notițe?" msgstr "Ștergeți aceste notițe?"
msgid "Log"
msgstr ""
msgid "Export Debug Report"
msgstr ""
msgid "Encryption Config"
msgstr ""
msgid "Configuration"
msgstr "Configurare"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Mutați în caietul de notițe..." msgstr "Mutați în caietul de notițe..."
@@ -1705,8 +1754,35 @@ msgstr "Selectați data"
msgid "Confirm" msgid "Confirm"
msgstr "Confirmați" msgstr "Confirmați"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Amânați sincronizarea" msgid "Notebook: %s"
msgstr "Caiete de notițe"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Itemii criptați nu pot fi editați"
#, fuzzy
msgid "New Notebook"
msgstr "Adăugați un nou caiet de notițe"
msgid "Configuration"
msgstr "Configurare"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Se decriptează itemi: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Resurse: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "notiță"
msgid "Notebooks"
msgstr "Caiete de notițe"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1742,6 +1818,50 @@ msgstr "Etichete noi:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Configurare"
msgid "Encryption Config"
msgstr ""
#, fuzzy
msgid "Tools"
msgstr "Unelte"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr ""
#, fuzzy
msgid "Creating report..."
msgstr "Se crează un %s..."
msgid "Export Debug Report"
msgstr ""
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Configurare" msgstr "Configurare"
@@ -1803,6 +1923,10 @@ msgstr "Caietul de notițe nu a puut fi salvat: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Editați caietul de notițe" msgstr "Editați caietul de notițe"
#, fuzzy
msgid "Enter notebook title"
msgstr "Titlul caietului de notițe:"
msgid "Show all" msgid "Show all"
msgstr "Afișați tot" msgstr "Afișați tot"
@@ -1826,10 +1950,32 @@ msgstr "Niciun item cu ID-ul %s"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "" msgstr ""
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Actualizat: %d."
msgid "View on map"
msgstr "Vizualizați pe hartă"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Caută..."
#, fuzzy
msgid "Choose an option"
msgstr "Afișați opțiunile avansate"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Atașează imagine" msgstr "Atașează imagine"
@@ -1849,23 +1995,18 @@ msgstr ""
msgid "Convert to todo" msgid "Convert to todo"
msgstr "" msgstr ""
msgid "Hide metadata" msgid "Properties"
msgstr "Ascundeți metadatele" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Afișați metadatele"
msgid "View on map"
msgstr "Vizualizați pe hartă"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Editați" msgstr "Editați"
msgid "Delete notebook" #, fuzzy
msgstr "Ștergeți caiet de notițe" msgid "Add title"
msgstr "titlu"
# vezi context # vezi context
msgid "Login with OneDrive" msgid "Login with OneDrive"
@@ -1874,18 +2015,26 @@ msgstr "Autentificare prin OneDrive"
msgid "Search" msgid "Search"
msgstr "Caută" msgstr "Caută"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Amânați sincronizarea"
"menu to access your existing notebooks."
msgstr ""
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "" #~ msgstr "Ascundeți metadatele"
"Nu aveți niciun caiet de notițe creat. Creați unul făcând click pe butonnul "
"(+)."
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Bine ați venit" #~ msgstr "Afișați metadatele"
#~ msgid "Delete notebook"
#~ msgstr "Ștergeți caiet de notițe"
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Nu aveți niciun caiet de notițe creat. Creați unul făcând click pe "
#~ "butonnul (+)."
#~ msgid "Welcome"
#~ msgstr "Bine ați venit"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separați fiecare etichetă printr-o virgulă." #~ msgstr "Separați fiecare etichetă printr-o virgulă."
@@ -1896,10 +2045,6 @@ msgstr "Bine ați venit"
#~ msgid "%s (%s): %s" #~ msgid "%s (%s): %s"
#~ msgstr "%s (%s): %s" #~ msgstr "%s (%s): %s"
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Website Joplin"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Statut: %s." #~ msgstr "Statut: %s."

View File

@@ -394,6 +394,23 @@ msgstr "Удалить заметку?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Запросы для заданного <pattern> во всех заметках." msgstr "Запросы для заданного <pattern> во всех заметках."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -534,6 +551,10 @@ msgstr "Введите `joplin help` для получения информац
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Фатальная ошибка:" msgstr "Фатальная ошибка:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Приложение авторизовано — можно закрыть вкладку браузера." msgstr "Приложение авторизовано — можно закрыть вкладку браузера."
@@ -631,6 +652,27 @@ msgstr "Настройки шифрования"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Настройки веб-клиппера" msgstr "Настройки веб-клиппера"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Вставить дату и время"
#, fuzzy
msgid "Open template directory"
msgstr "Каталог экспорта Joplin"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -647,6 +689,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Проверить обновления..." msgstr "Проверить обновления..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Импорт" msgstr "Импорт"
@@ -690,12 +735,18 @@ msgstr "Наклонный"
msgid "Link" msgid "Link"
msgstr "Ссылка" msgstr "Ссылка"
msgid "Code"
msgstr "Код"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Вставить дату и время" msgstr "Вставить дату и время"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Редактировать во внешнем редакторе" msgstr "Редактировать во внешнем редакторе"
msgid "Tags"
msgstr "Метки"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Поиск во всех заметках" msgstr "Поиск во всех заметках"
@@ -723,6 +774,10 @@ msgstr "&Помощь"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Сайт и документация" msgstr "Сайт и документация"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Сделать пожертвование" msgstr "Сделать пожертвование"
@@ -926,8 +981,8 @@ msgstr ""
"загрузятся при синхронизации." "загрузятся при синхронизации."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Для получения дополнительной информации о сквозном шифровании (E2EE) и " "Для получения дополнительной информации о сквозном шифровании (E2EE) и "
"советах о том, как его включить, пожалуйста, обратитесь к документации:" "советах о том, как его включить, пожалуйста, обратитесь к документации:"
@@ -971,6 +1026,9 @@ msgstr "Переименовать метку:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Установить напоминание:" msgstr "Установить напоминание:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Разметка" msgstr "Разметка"
@@ -1007,6 +1065,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Список заметок" msgstr "Список заметок"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1080,9 +1141,6 @@ msgstr "Вставить гиперссылку"
msgid "Attach file" msgid "Attach file"
msgstr "Прикрепить файл" msgstr "Прикрепить файл"
msgid "Tags"
msgstr "Метки"
msgid "Set alarm" msgid "Set alarm"
msgstr "Установить напоминание" msgstr "Установить напоминание"
@@ -1093,9 +1151,6 @@ msgstr "В: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Гиперссылка" msgstr "Гиперссылка"
msgid "Code"
msgstr "Код"
msgid "Numbered List" msgid "Numbered List"
msgstr "Нумерованный список" msgstr "Нумерованный список"
@@ -1173,17 +1228,6 @@ msgstr "Удалить"
msgid "Rename" msgid "Rename"
msgstr "Переименовать" msgstr "Переименовать"
msgid "Notebooks"
msgstr "Блокноты"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Расшифровано элементов: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Получение ресурсов: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "" msgstr ""
"Пожалуйста, выберите, куда должен быть экспортирован статус синхронизации" "Пожалуйста, выберите, куда должен быть экспортирован статус синхронизации"
@@ -1462,6 +1506,12 @@ msgstr "Светлая"
msgid "Dark" msgid "Dark"
msgstr "Темная" msgstr "Темная"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Незавершенные задачи сверху" msgstr "Незавершенные задачи сверху"
@@ -1529,6 +1579,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Показывать иконку в трее" msgstr "Показывать иконку в трее"
@@ -1601,9 +1654,6 @@ msgstr ""
"Если не задан, будет произведена попытка автоматического определения " "Если не задан, будет произведена попытка автоматического определения "
"редактора по умолчанию." "редактора по умолчанию."
msgid "Show advanced options"
msgstr "Показывать расширенные настройки"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Пользовательские сертификаты TLS" msgstr "Пользовательские сертификаты TLS"
@@ -1622,6 +1672,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Игнорировать ошибки сертификата TLS" msgstr "Игнорировать ошибки сертификата TLS"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Включить шифрование" msgstr "Включить шифрование"
@@ -1778,24 +1833,20 @@ msgstr "Разрешение на использование камеры"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Необходимо ваше разрешение на использование камеры." msgstr "Необходимо ваше разрешение на использование камеры."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Нет активного блокнота."
#, fuzzy
msgid "Create a notebook"
msgstr "Создает новый блокнот."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Сейчас здесь нет заметок. Создайте новую, нажав кнопку (+)." msgstr "Сейчас здесь нет заметок. Создайте новую, нажав кнопку (+)."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Удалить эти заметки?" msgstr "Удалить эти заметки?"
msgid "Log"
msgstr "Журнал"
msgid "Export Debug Report"
msgstr "Экспортировать отладочный отчет"
msgid "Encryption Config"
msgstr "Конфигурация шифрования"
msgid "Configuration"
msgstr "Конфигурация"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Переместить в блокнот..." msgstr "Переместить в блокнот..."
@@ -1818,8 +1869,35 @@ msgstr "Выбрать дату"
msgid "Confirm" msgid "Confirm"
msgstr "Подтвердить" msgstr "Подтвердить"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Отменить синхронизацию" msgid "Notebook: %s"
msgstr "Блокноты"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Зашифрованные элементы не могут быть изменены"
#, fuzzy
msgid "New Notebook"
msgstr "Новый блокнот"
msgid "Configuration"
msgstr "Конфигурация"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Расшифровано элементов: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Получение ресурсов: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "заметка"
msgid "Notebooks"
msgstr "Блокноты"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Проверка... Пожалуйста, подождите." msgstr "Проверка... Пожалуйста, подождите."
@@ -1861,6 +1939,50 @@ msgstr "Новые метки:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Введите новые метки или выберите из списка" msgstr "Введите новые метки или выберите из списка"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Конфигурация"
msgid "Encryption Config"
msgstr "Конфигурация шифрования"
#, fuzzy
msgid "Tools"
msgstr "&Сервис"
#, fuzzy
msgid "Sync Status"
msgstr "Статус"
msgid "Log"
msgstr "Журнал"
#, fuzzy
msgid "Creating report..."
msgstr "Создание новой %s..."
msgid "Export Debug Report"
msgstr "Экспортировать отладочный отчет"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Конфигурация" msgstr "Конфигурация"
@@ -1928,6 +2050,10 @@ msgstr "Блокнот не может быть сохранен: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Редактировать блокнот" msgstr "Редактировать блокнот"
#, fuzzy
msgid "Enter notebook title"
msgstr "Название блокнота:"
msgid "Show all" msgid "Show all"
msgstr "Показать все" msgstr "Показать все"
@@ -1953,10 +2079,32 @@ msgstr ""
"Мобильное приложение Joplin в настоящее время не поддерживает этот тип " "Мобильное приложение Joplin в настоящее время не поддерживает этот тип "
"ссылки: %s" "ссылки: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Неподдерживаемый формат изображения: %s" msgstr "Неподдерживаемый формат изображения: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Обновлено: %d."
msgid "View on map"
msgstr "Посмотреть на карте"
msgid "Go to source URL"
msgstr "Перейти к исходному URL"
#, fuzzy
msgid "Attach..."
msgstr "Поиск..."
#, fuzzy
msgid "Choose an option"
msgstr "Показывать расширенные настройки"
msgid "Take photo" msgid "Take photo"
msgstr "Сделать фото" msgstr "Сделать фото"
@@ -1975,23 +2123,19 @@ msgstr "Преобразовать в заметку"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Преобразовать в задачу" msgstr "Преобразовать в задачу"
msgid "Hide metadata" #, fuzzy
msgstr "Скрыть метаданные" msgid "Properties"
msgstr "Свойства заметки"
msgid "Show metadata" msgid "Add body"
msgstr "Показать метаданные" msgstr ""
msgid "View on map"
msgstr "Посмотреть на карте"
msgid "Go to source URL"
msgstr "Перейти к исходному URL"
msgid "Edit" msgid "Edit"
msgstr "Правка" msgstr "Правка"
msgid "Delete notebook" #, fuzzy
msgstr "Удалить блокнот" msgid "Add title"
msgstr "заголовок"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Войти с OneDrive" msgstr "Войти с OneDrive"
@@ -1999,18 +2143,35 @@ msgstr "Войти с OneDrive"
msgid "Search" msgid "Search"
msgstr "Поиск" msgstr "Поиск"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Разрешение на использование камеры"
msgstr ""
"Нажмите на кнопку (+) для создания новой заметки или нового блокнота. "
"Нажмите на боковое меню для доступа к вашим существующим блокнотам."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "У вас сейчас нет блокнота. Создайте его нажатием на кнопку (+)." #~ msgstr "Отменить синхронизацию"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Добро пожаловать" #~ msgstr "Скрыть метаданные"
#~ msgid "Show metadata"
#~ msgstr "Показать метаданные"
#~ msgid "Delete notebook"
#~ msgstr "Удалить блокнот"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Нажмите на кнопку (+) для создания новой заметки или нового блокнота. "
#~ "Нажмите на боковое меню для доступа к вашим существующим блокнотам."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "У вас сейчас нет блокнота. Создайте его нажатием на кнопку (+)."
#~ msgid "Welcome"
#~ msgstr "Добро пожаловать"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Разделяйте каждую метку запятой." #~ msgstr "Разделяйте каждую метку запятой."
@@ -2027,6 +2188,3 @@ msgstr "Добро пожаловать"
#~ msgstr "" #~ msgstr ""
#~ "Путь для синхронизации, когда включена синхронизация файловой системы. " #~ "Путь для синхронизации, когда включена синхронизация файловой системы. "
#~ "См. `sync.target`." #~ "См. `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"

View File

@@ -395,6 +395,23 @@ msgstr "Želite izbrisati zabeležko?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Išči dani <pattern> v vseh zabeležkah." msgstr "Išči dani <pattern> v vseh zabeležkah."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -529,6 +546,10 @@ msgstr "Vtipkajte `joplin help` za informacije o uporabi."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Usodna napaka:" msgstr "Usodna napaka:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Aplikacija je bila avtorizirana - lahko zaprete zavihek v brskalniku." msgstr "Aplikacija je bila avtorizirana - lahko zaprete zavihek v brskalniku."
@@ -628,6 +649,26 @@ msgstr "Možnosti enkripcije"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "" msgstr ""
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
msgid "Insert template"
msgstr ""
#, fuzzy
msgid "Open template directory"
msgstr "Joplin izvozno mesto"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -645,6 +686,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Preverjanje za posodobitvami..." msgstr "Preverjanje za posodobitvami..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Uvozi" msgstr "Uvozi"
@@ -690,12 +734,18 @@ msgstr ""
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "" msgstr ""
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "" msgstr ""
msgid "Tags"
msgstr "Oznake"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Išči znotraj vseh zabeležk" msgstr "Išči znotraj vseh zabeležk"
@@ -728,6 +778,10 @@ msgstr "Pomoč"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Spletna stran in dokumentacija" msgstr "Spletna stran in dokumentacija"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin spletna stran"
msgid "Make a donation" msgid "Make a donation"
msgstr "Doniraj" msgstr "Doniraj"
@@ -925,8 +979,8 @@ msgstr ""
"da bodo sčasoma preneseni s sinhronizacijo." "da bodo sčasoma preneseni s sinhronizacijo."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
msgid "Status" msgid "Status"
@@ -970,6 +1024,9 @@ msgstr "Preimenuj"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Nastavi alarm:" msgstr "Nastavi alarm:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Izgled" msgstr "Izgled"
@@ -1011,6 +1068,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "Beležnice" msgstr "Beležnice"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1083,9 +1143,6 @@ msgstr ""
msgid "Attach file" msgid "Attach file"
msgstr "Pripni datoteko" msgstr "Pripni datoteko"
msgid "Tags"
msgstr "Oznake"
msgid "Set alarm" msgid "Set alarm"
msgstr "Nastavi alarm" msgstr "Nastavi alarm"
@@ -1096,9 +1153,6 @@ msgstr "%s: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "" msgstr ""
msgid "Code"
msgstr ""
msgid "Numbered List" msgid "Numbered List"
msgstr "" msgstr ""
@@ -1178,17 +1232,6 @@ msgstr "Izbriši"
msgid "Rename" msgid "Rename"
msgstr "Preimenuj" msgstr "Preimenuj"
msgid "Notebooks"
msgstr "Beležnice"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Preneseni predmeti: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Viri: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Prosim izberite, kam želite izvoziti sinhronizacijski status" msgstr "Prosim izberite, kam želite izvoziti sinhronizacijski status"
@@ -1470,6 +1513,12 @@ msgstr "Svetlo"
msgid "Dark" msgid "Dark"
msgstr "Temno" msgstr "Temno"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Premakni nedokončane sezname opravil na vrh" msgstr "Premakni nedokončane sezname opravil na vrh"
@@ -1539,6 +1588,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Pokaži ikono v območju za obvestila(opravilna vrstica)" msgstr "Pokaži ikono v območju za obvestila(opravilna vrstica)"
@@ -1609,9 +1661,6 @@ msgstr ""
"Urejevalnik, ki bo uporabljen za odpiranje zabeležk. Če noben ni izbran, bo " "Urejevalnik, ki bo uporabljen za odpiranje zabeležk. Če noben ni izbran, bo "
"avtomatsko zaznan privzeti urejevalnik." "avtomatsko zaznan privzeti urejevalnik."
msgid "Show advanced options"
msgstr "Pokaži napredne možnosti"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "" msgstr ""
@@ -1625,6 +1674,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "" msgstr ""
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Omogoči enkripcijo" msgstr "Omogoči enkripcijo"
@@ -1785,24 +1839,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ni aktivnih beležnic."
#, fuzzy
msgid "Create a notebook"
msgstr "Ustvari novo beležnico."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Trenutno ni zabeležk. Ustvarite jo s klikom na (+) gumb." msgstr "Trenutno ni zabeležk. Ustvarite jo s klikom na (+) gumb."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Izbriši te zabeležke?" msgstr "Izbriši te zabeležke?"
msgid "Log"
msgstr "Dnevnik"
msgid "Export Debug Report"
msgstr "Izvozi poročilo o napakah"
msgid "Encryption Config"
msgstr "Nastavite enkripcije"
msgid "Configuration"
msgstr "Nastavitve"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Premakni v beležnico..." msgstr "Premakni v beležnico..."
@@ -1827,8 +1877,35 @@ msgstr "Izberi datum"
msgid "Confirm" msgid "Confirm"
msgstr "Potrdi" msgstr "Potrdi"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Prekliči sinhronizacijo" msgid "Notebook: %s"
msgstr "Beležnice"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Enkriptirani predmeti ne morejo biti spremenjeni"
#, fuzzy
msgid "New Notebook"
msgstr "Nova beležnica"
msgid "Configuration"
msgstr "Nastavitve"
#, fuzzy, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Preneseni predmeti: %d/%d"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Viri: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "zabeležka"
msgid "Notebooks"
msgstr "Beležnice"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1866,6 +1943,50 @@ msgstr ""
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "" msgstr ""
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Nastavitve"
msgid "Encryption Config"
msgstr "Nastavite enkripcije"
#, fuzzy
msgid "Tools"
msgstr "Orodja"
#, fuzzy
msgid "Sync Status"
msgstr "Status"
msgid "Log"
msgstr "Dnevnik"
#, fuzzy
msgid "Creating report..."
msgstr "Ustvarjanje nove %s..."
msgid "Export Debug Report"
msgstr "Izvozi poročilo o napakah"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Nastavitve" msgstr "Nastavitve"
@@ -1928,6 +2049,10 @@ msgstr "Beležnica ne more biti shranjena: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Uredi beležnico" msgstr "Uredi beležnico"
#, fuzzy
msgid "Enter notebook title"
msgstr "Naslov beležnice:"
msgid "Show all" msgid "Show all"
msgstr "Prikaži vse" msgstr "Prikaži vse"
@@ -1951,10 +2076,32 @@ msgstr ""
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Nepodprt tip slike: %s" msgstr "Nepodprt tip slike: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Posodobljeno: %d."
msgid "View on map"
msgstr "Prikaži na zemljevidu"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "Išči"
#, fuzzy
msgid "Choose an option"
msgstr "Pokaži napredne možnosti"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "Pripni fotografijo" msgstr "Pripni fotografijo"
@@ -1974,23 +2121,18 @@ msgstr "Pretvori v zabeležko"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Pretvori v za narediti" msgstr "Pretvori v za narediti"
msgid "Hide metadata" msgid "Properties"
msgstr "Skrij meta podatke" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "Prikaži meta podatke"
msgid "View on map"
msgstr "Prikaži na zemljevidu"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "Uredi" msgstr "Uredi"
msgid "Delete notebook" #, fuzzy
msgstr "Izbriši beležnico" msgid "Add title"
msgstr "Neimenovano"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Prijavi se z OneDrive" msgstr "Prijavi se z OneDrive"
@@ -1998,18 +2140,32 @@ msgstr "Prijavi se z OneDrive"
msgid "Search" msgid "Search"
msgstr "Išči" msgstr "Išči"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "Prekliči sinhronizacijo"
"menu to access your existing notebooks."
msgstr ""
"Kliknite na (+) gumb, da ustvarite novo zabeležko ali beležnico. Kliknite na "
"stranski menu za dostop do obstoječih beležnic."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "Trenutno nimate nobene beležnice. Ustvarite jo s klikom na (+) gumb." #~ msgstr "Skrij meta podatke"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "Dobrodošli" #~ msgstr "Prikaži meta podatke"
#~ msgid "Delete notebook"
#~ msgstr "Izbriši beležnico"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Kliknite na (+) gumb, da ustvarite novo zabeležko ali beležnico. Kliknite "
#~ "na stranski menu za dostop do obstoječih beležnic."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Trenutno nimate nobene beležnice. Ustvarite jo s klikom na (+) gumb."
#~ msgid "Welcome"
#~ msgstr "Dobrodošli"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Loči vsako oznako z vejico." #~ msgstr "Loči vsako oznako z vejico."
@@ -2027,10 +2183,6 @@ msgstr "Dobrodošli"
#~ "Pot za sinhronizacijo, ki bo uporabljena ob omogočeni sinhronizaciji. " #~ "Pot za sinhronizacijo, ki bo uporabljena ob omogočeni sinhronizaciji. "
#~ "Poglej `sync.target`." #~ "Poglej `sync.target`."
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Joplin spletna stran"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Stanje: %s." #~ msgstr "Stanje: %s."

2179
CliClient/locales/sr_RS.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -396,6 +396,23 @@ msgstr "Ta bort anteckning?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Söker efter det givna <pattern> i alla anteckningarna." msgstr "Söker efter det givna <pattern> i alla anteckningarna."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -535,6 +552,10 @@ msgstr "Skriv `joplin help` för användningsinformation."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Allvarligt fel:" msgstr "Allvarligt fel:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "Programmet har godkänts - du kan nu stänga den här webbläsarfliken." msgstr "Programmet har godkänts - du kan nu stänga den här webbläsarfliken."
@@ -632,6 +653,27 @@ msgstr "Krypteringsinställningar"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web clipper-inställningar" msgstr "Web clipper-inställningar"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Infoga datumtid"
#, fuzzy
msgid "Open template directory"
msgstr "Joplin-exporteringskatalog"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -649,6 +691,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Sök efter uppdateringar..." msgstr "Sök efter uppdateringar..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "Importera" msgstr "Importera"
@@ -693,12 +738,18 @@ msgstr "Kursiv"
msgid "Link" msgid "Link"
msgstr "Länk" msgstr "Länk"
msgid "Code"
msgstr "Kod"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Infoga datumtid" msgstr "Infoga datumtid"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Redigera i extern redigerare" msgstr "Redigera i extern redigerare"
msgid "Tags"
msgstr "Taggar"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Sök i alla anteckningarna" msgstr "Sök i alla anteckningarna"
@@ -729,6 +780,10 @@ msgstr "Hjälp"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Webbplats och dokumentation" msgstr "Webbplats och dokumentation"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Gör en donation" msgstr "Gör en donation"
@@ -931,8 +986,8 @@ msgstr ""
"småningom kommer att hämtas via synkronisering." "småningom kommer att hämtas via synkronisering."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"För mer information om End-to-End Encryption (E2EE) och råd om hur du " "För mer information om End-to-End Encryption (E2EE) och råd om hur du "
"aktiverar det finns i dokumentationen:" "aktiverar det finns i dokumentationen:"
@@ -977,6 +1032,9 @@ msgstr "Byt namn på tagg:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Ställ in alarm:" msgstr "Ställ in alarm:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Layout" msgstr "Layout"
@@ -1015,6 +1073,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Anteckningsboken" msgstr "Anteckningsboken"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1088,9 +1149,6 @@ msgstr "Infoga hyperlänk"
msgid "Attach file" msgid "Attach file"
msgstr "Bifoga fil" msgstr "Bifoga fil"
msgid "Tags"
msgstr "Taggar"
msgid "Set alarm" msgid "Set alarm"
msgstr "Sätt alarm" msgstr "Sätt alarm"
@@ -1101,9 +1159,6 @@ msgstr "I: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Hyperlänk" msgstr "Hyperlänk"
msgid "Code"
msgstr "Kod"
msgid "Numbered List" msgid "Numbered List"
msgstr "Numrerad lista" msgstr "Numrerad lista"
@@ -1181,17 +1236,6 @@ msgstr "Ta bort"
msgid "Rename" msgid "Rename"
msgstr "Byt namn" msgstr "Byt namn"
msgid "Notebooks"
msgstr "Anteckningsböcker"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Dekrypterar objekt: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Hämtar resurser: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Välj vart synkroniseringstillståndet ska exporteras till" msgstr "Välj vart synkroniseringstillståndet ska exporteras till"
@@ -1471,6 +1515,12 @@ msgstr "Ljus"
msgid "Dark" msgid "Dark"
msgstr "Mörk" msgstr "Mörk"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Inte slutförda att-göra högst upp" msgstr "Inte slutförda att-göra högst upp"
@@ -1539,6 +1589,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Visa fältikon" msgstr "Visa fältikon"
@@ -1610,9 +1663,6 @@ msgstr ""
"anteckning. Om inget tillhandahålls försöker det automatiskt identifiera " "anteckning. Om inget tillhandahålls försöker det automatiskt identifiera "
"standardredigeraren." "standardredigeraren."
msgid "Show advanced options"
msgstr "Visa avancerade inställningar"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Anpassade TLS-certifikat" msgstr "Anpassade TLS-certifikat"
@@ -1631,6 +1681,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "Ignorera TLS-certifikatfel" msgstr "Ignorera TLS-certifikatfel"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Aktivera kryptering" msgstr "Aktivera kryptering"
@@ -1787,6 +1842,14 @@ msgstr "Tillåtelse att använda kameran"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Du måste ge tillåtelse att använda kameran." msgstr "Du måste ge tillåtelse att använda kameran."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Ingen aktiv anteckningsbok."
#, fuzzy
msgid "Create a notebook"
msgstr "Skapar en ny anteckningsbok."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "" msgstr ""
"Det finns för närvarande inga anteckningar. Skapa en genom att klicka på (+)-" "Det finns för närvarande inga anteckningar. Skapa en genom att klicka på (+)-"
@@ -1795,18 +1858,6 @@ msgstr ""
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Ta bort dessa anteckningar?" msgstr "Ta bort dessa anteckningar?"
msgid "Log"
msgstr "Logg"
msgid "Export Debug Report"
msgstr "Exportera felsökningsrapport"
msgid "Encryption Config"
msgstr "Kryptering-konfiguration"
msgid "Configuration"
msgstr "Konfiguration"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Flytta till anteckningsbok..." msgstr "Flytta till anteckningsbok..."
@@ -1829,8 +1880,35 @@ msgstr "Välj datum"
msgid "Confirm" msgid "Confirm"
msgstr "Bekräfta" msgstr "Bekräfta"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Avbryt synkronisering" msgid "Notebook: %s"
msgstr "Anteckningsböcker"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Krypterade objekt kan inte ändras"
#, fuzzy
msgid "New Notebook"
msgstr "Ny anteckningsbok"
msgid "Configuration"
msgstr "Konfiguration"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Dekrypterar objekt: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Hämtar resurser: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "anteckning"
msgid "Notebooks"
msgstr "Anteckningsböcker"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Kontrollerar... vänta." msgstr "Kontrollerar... vänta."
@@ -1872,6 +1950,50 @@ msgstr "Nya taggar:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Skriv nya taggar eller välj från listan" msgstr "Skriv nya taggar eller välj från listan"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Konfiguration"
msgid "Encryption Config"
msgstr "Kryptering-konfiguration"
#, fuzzy
msgid "Tools"
msgstr "Verktyg"
#, fuzzy
msgid "Sync Status"
msgstr "Tillstånd"
msgid "Log"
msgstr "Logg"
#, fuzzy
msgid "Creating report..."
msgstr "Skapar ny %s..."
msgid "Export Debug Report"
msgstr "Exportera felsökningsrapport"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Konfiguration" msgstr "Konfiguration"
@@ -1941,6 +2063,10 @@ msgstr "Anteckningsboken kunde inte sparas: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Redigera anteckningsbok" msgstr "Redigera anteckningsbok"
#, fuzzy
msgid "Enter notebook title"
msgstr "Titel på anteckningsbok:"
msgid "Show all" msgid "Show all"
msgstr "Visa alla" msgstr "Visa alla"
@@ -1965,10 +2091,32 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"Den mobila appen Joplin stöder för närvarande inte denna typ av länk: %s" "Den mobila appen Joplin stöder för närvarande inte denna typ av länk: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Bildstorlek som inte stöds: %s" msgstr "Bildstorlek som inte stöds: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Uppdaterad: %d."
msgid "View on map"
msgstr "Visa på karta"
msgid "Go to source URL"
msgstr "Gå till källans URL"
#, fuzzy
msgid "Attach..."
msgstr "Sök..."
#, fuzzy
msgid "Choose an option"
msgstr "Visa avancerade inställningar"
msgid "Take photo" msgid "Take photo"
msgstr "Ta ett foto" msgstr "Ta ett foto"
@@ -1987,23 +2135,19 @@ msgstr "Konvertera till anteckning"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Konvertera till att-göra" msgstr "Konvertera till att-göra"
msgid "Hide metadata" #, fuzzy
msgstr "Dölj metadata" msgid "Properties"
msgstr "Anteckningens egenskaper"
msgid "Show metadata" msgid "Add body"
msgstr "Visa metadata" msgstr ""
msgid "View on map"
msgstr "Visa på karta"
msgid "Go to source URL"
msgstr "Gå till källans URL"
msgid "Edit" msgid "Edit"
msgstr "Redigera" msgstr "Redigera"
msgid "Delete notebook" #, fuzzy
msgstr "Ta bort anteckningsbok" msgid "Add title"
msgstr "titel"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "Logga in med OneDrive" msgstr "Logga in med OneDrive"
@@ -2011,21 +2155,38 @@ msgstr "Logga in med OneDrive"
msgid "Search" msgid "Search"
msgstr "Sök" msgstr "Sök"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Tillåtelse att använda kameran"
msgstr ""
"Klicka på (+)-knappen för att skapa en ny anteckning eller anteckningsbok. "
"Klicka på sidomenyn för att få tillgång till dina befintliga "
"anteckningsböcker."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "Avbryt synkronisering"
"Du har för närvarande ingen anteckningsbok. Skapa en genom att klicka på (+)-"
"knappen."
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Välkommen" #~ msgstr "Dölj metadata"
#~ msgid "Show metadata"
#~ msgstr "Visa metadata"
#~ msgid "Delete notebook"
#~ msgstr "Ta bort anteckningsbok"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Klicka på (+)-knappen för att skapa en ny anteckning eller "
#~ "anteckningsbok. Klicka på sidomenyn för att få tillgång till dina "
#~ "befintliga anteckningsböcker."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Du har för närvarande ingen anteckningsbok. Skapa en genom att klicka på "
#~ "(+)-knappen."
#~ msgid "Welcome"
#~ msgstr "Välkommen"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Separera varje tagg med ett komma." #~ msgstr "Separera varje tagg med ett komma."
@@ -2043,9 +2204,6 @@ msgstr "Välkommen"
#~ "Sökvägen att synkronisera med när synkronisering av filsystem är " #~ "Sökvägen att synkronisera med när synkronisering av filsystem är "
#~ "aktiverat. Se `sync.target`." #~ "aktiverat. Se `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "Tillstånd: %s." #~ msgstr "Tillstånd: %s."

View File

@@ -376,6 +376,23 @@ msgstr "Notu sil?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "Tüm notlarda girilen <pattern> i arar." msgstr "Tüm notlarda girilen <pattern> i arar."
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -501,6 +518,10 @@ msgstr "Kullanım bilgisi için `joplin help` yazın."
msgid "Fatal error:" msgid "Fatal error:"
msgstr "Büyük hata:" msgstr "Büyük hata:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "" msgstr ""
@@ -599,6 +620,27 @@ msgstr "Şifreleme seçenekleri"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web alıntılama ayarları" msgstr "Web alıntılama ayarları"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "Tarih Ekle"
#, fuzzy
msgid "Open template directory"
msgstr "Joplin Dizin Dışa Aktarım"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -616,6 +658,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "Güncellemeleri kontrol et..." msgstr "Güncellemeleri kontrol et..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "İçe aktar" msgstr "İçe aktar"
@@ -660,12 +705,18 @@ msgstr "İtalik"
msgid "Link" msgid "Link"
msgstr "Bağlantı" msgstr "Bağlantı"
msgid "Code"
msgstr "Kod"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "Tarih Ekle" msgstr "Tarih Ekle"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "Başka editörde düzenle" msgstr "Başka editörde düzenle"
msgid "Tags"
msgstr "Etiketler"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "Tüm notlarda ara" msgstr "Tüm notlarda ara"
@@ -696,6 +747,10 @@ msgstr "Yardım"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "Web sitesi ve dökümanlar" msgstr "Web sitesi ve dökümanlar"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "Bağış yapın" msgstr "Bağış yapın"
@@ -900,8 +955,8 @@ msgstr ""
"senkronizasyon yoluyla indirilmeleri sağlanacaktır." "senkronizasyon yoluyla indirilmeleri sağlanacaktır."
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "" msgstr ""
"Uçtan Uca Şifreleme (E2EE) hakkında bilgi ve nasıl aktif edilebileceğine " "Uçtan Uca Şifreleme (E2EE) hakkında bilgi ve nasıl aktif edilebileceğine "
"dair ipuçları için lütfen belgeleri inceleyin:" "dair ipuçları için lütfen belgeleri inceleyin:"
@@ -946,6 +1001,9 @@ msgstr "Etiketi yeniden adlandır:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "Alarm kur:" msgstr "Alarm kur:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "Düzen" msgstr "Düzen"
@@ -984,6 +1042,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "Not listesi" msgstr "Not listesi"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1058,9 +1119,6 @@ msgstr "Köprü ekle"
msgid "Attach file" msgid "Attach file"
msgstr "Dosya ekle" msgstr "Dosya ekle"
msgid "Tags"
msgstr "Etiketler"
msgid "Set alarm" msgid "Set alarm"
msgstr "Alarm kur" msgstr "Alarm kur"
@@ -1071,9 +1129,6 @@ msgstr "İçinde: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "Köprü" msgstr "Köprü"
msgid "Code"
msgstr "Kod"
msgid "Numbered List" msgid "Numbered List"
msgstr "Numaralı liste" msgstr "Numaralı liste"
@@ -1150,17 +1205,6 @@ msgstr "Sil"
msgid "Rename" msgid "Rename"
msgstr "Yeniden adlandır" msgstr "Yeniden adlandır"
msgid "Notebooks"
msgstr "Not defterleri"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Şifresi çözülenler: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Kaynaklar alınıyor: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "Lütfen senkronizasyon durumunun nereye aktarılacağını seçin" msgstr "Lütfen senkronizasyon durumunun nereye aktarılacağını seçin"
@@ -1439,6 +1483,12 @@ msgstr "Aydınlık"
msgid "Dark" msgid "Dark"
msgstr "Karanlık" msgstr "Karanlık"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "Tamamlanmamış yap-list yukarıda" msgstr "Tamamlanmamış yap-list yukarıda"
@@ -1507,6 +1557,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "Tepsi simgesini göster" msgstr "Tepsi simgesini göster"
@@ -1577,9 +1630,6 @@ msgstr ""
"Editör komutu (argüman içerebilir) not açmak için kullanılacaktır. Eğer " "Editör komutu (argüman içerebilir) not açmak için kullanılacaktır. Eğer "
"sağlanmadıysa, varsayılan düzenleyiciyi otomatik olarak algılamaya çalışır." "sağlanmadıysa, varsayılan düzenleyiciyi otomatik olarak algılamaya çalışır."
msgid "Show advanced options"
msgstr "Gelişmiş ayarları göster"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "Özel TLS sertifikaları" msgstr "Özel TLS sertifikaları"
@@ -1598,6 +1648,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "TLS sertifikası hatalarını yoksay" msgstr "TLS sertifikası hatalarını yoksay"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "Şifrelemeyi etkinleştir" msgstr "Şifrelemeyi etkinleştir"
@@ -1753,24 +1808,20 @@ msgstr "Kamera kullanımı için izin"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "Kamera kullanımı için izniniz gerekmektedir." msgstr "Kamera kullanımı için izniniz gerekmektedir."
#, fuzzy
msgid "You currently have no notebooks."
msgstr "Aktif not defteri yok."
#, fuzzy
msgid "Create a notebook"
msgstr "Yeni bir not defteri oluşturur."
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "Şu anda not yok. (+) butonuna tıklayarak bir tane oluşturun." msgstr "Şu anda not yok. (+) butonuna tıklayarak bir tane oluşturun."
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "Bu notlar silinsin mi?" msgstr "Bu notlar silinsin mi?"
msgid "Log"
msgstr "Log"
msgid "Export Debug Report"
msgstr "Hata Ayıklama Raporunu Dışa Aktar"
msgid "Encryption Config"
msgstr "Yapılandırmayı şifrele"
msgid "Configuration"
msgstr "Yapılandırma"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "Not defterine taşı..." msgstr "Not defterine taşı..."
@@ -1793,8 +1844,35 @@ msgstr "Tarih seç"
msgid "Confirm" msgid "Confirm"
msgstr "Onayla" msgstr "Onayla"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "Senkronizasyonu iptal et" msgid "Notebook: %s"
msgstr "Not defterleri"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "Şifrelenmiş öğeler değiştirilemez"
#, fuzzy
msgid "New Notebook"
msgstr "Yeni not defteri"
msgid "Configuration"
msgstr "Yapılandırma"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "Şifresi çözülenler: %d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "Kaynaklar alınıyor: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "not"
msgid "Notebooks"
msgstr "Not defterleri"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "Kontrol ediliyor... Lütfen bekleyin." msgstr "Kontrol ediliyor... Lütfen bekleyin."
@@ -1836,6 +1914,50 @@ msgstr "Yeni etiketler:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "Yeni etiketler yazın veya listeden seçin" msgstr "Yeni etiketler yazın veya listeden seçin"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "Yapılandırma"
msgid "Encryption Config"
msgstr "Yapılandırmayı şifrele"
#, fuzzy
msgid "Tools"
msgstr "Araçlar"
#, fuzzy
msgid "Sync Status"
msgstr "Durum"
msgid "Log"
msgstr "Log"
#, fuzzy
msgid "Creating report..."
msgstr "Yeni %s oluşturuluyor..."
msgid "Export Debug Report"
msgstr "Hata Ayıklama Raporunu Dışa Aktar"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "Yapılandırma" msgstr "Yapılandırma"
@@ -1902,6 +2024,10 @@ msgstr "Not defteri kaydedilemedi: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "Not defterini düzenle" msgstr "Not defterini düzenle"
#, fuzzy
msgid "Enter notebook title"
msgstr "Not defteri başlığı:"
msgid "Show all" msgid "Show all"
msgstr "Tümünü göster" msgstr "Tümünü göster"
@@ -1926,10 +2052,32 @@ msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "" msgstr ""
"Joplin mobil uygulaması şu anda bu tür bir bağlantıyı desteklemiyor: %s" "Joplin mobil uygulaması şu anda bu tür bir bağlantıyı desteklemiyor: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "Desteklenmeyen resim türü: %s" msgstr "Desteklenmeyen resim türü: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "Güncellenme: %d."
msgid "View on map"
msgstr "Haritada gör"
msgid "Go to source URL"
msgstr "URL kaynağına git"
#, fuzzy
msgid "Attach..."
msgstr "Ara..."
#, fuzzy
msgid "Choose an option"
msgstr "Gelişmiş ayarları göster"
msgid "Take photo" msgid "Take photo"
msgstr "Fotoğraf çek" msgstr "Fotoğraf çek"
@@ -1948,23 +2096,19 @@ msgstr "Nota çevir"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "Yapılacak olarak çevir" msgstr "Yapılacak olarak çevir"
msgid "Hide metadata" #, fuzzy
msgstr "Metadata'yı gizle" msgid "Properties"
msgstr "Not özellikleri"
msgid "Show metadata" msgid "Add body"
msgstr "Metadata'yı göster" msgstr ""
msgid "View on map"
msgstr "Haritada gör"
msgid "Go to source URL"
msgstr "URL kaynağına git"
msgid "Edit" msgid "Edit"
msgstr "Düzenle" msgstr "Düzenle"
msgid "Delete notebook" #, fuzzy
msgstr "Not defterini sil" msgid "Add title"
msgstr "başlık"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "OneDrive ile giriş yapın" msgstr "OneDrive ile giriş yapın"
@@ -1972,19 +2116,36 @@ msgstr "OneDrive ile giriş yapın"
msgid "Search" msgid "Search"
msgstr "Arama" msgstr "Arama"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "Kamera kullanımı için izin"
msgstr ""
"Yeni bir not veya not defteri oluşturmak için (+) düğmesine tıklayın. Mevcut "
"not defterlerinize erişmek için yandaki menüye tıklayın."
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "" #~ msgstr "Senkronizasyonu iptal et"
"Şu anda not defteriniz yok. (+) butonuna tıklayarak bir tane oluşturun."
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "Hoşgeldiniz" #~ msgstr "Metadata'yı gizle"
#~ msgid "Show metadata"
#~ msgstr "Metadata'yı göster"
#~ msgid "Delete notebook"
#~ msgstr "Not defterini sil"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr ""
#~ "Yeni bir not veya not defteri oluşturmak için (+) düğmesine tıklayın. "
#~ "Mevcut not defterlerinize erişmek için yandaki menüye tıklayın."
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr ""
#~ "Şu anda not defteriniz yok. (+) butonuna tıklayarak bir tane oluşturun."
#~ msgid "Welcome"
#~ msgstr "Hoşgeldiniz"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "Her etiketi virgülle ayırın." #~ msgstr "Her etiketi virgülle ayırın."
@@ -2001,6 +2162,3 @@ msgstr "Hoşgeldiniz"
#~ msgstr "" #~ msgstr ""
#~ "Dosya sistemi senkronizasyonu etkinleştirildiğinde senkronize edilecek " #~ "Dosya sistemi senkronizasyonu etkinleştirildiğinde senkronize edilecek "
#~ "yol. Bakınız `sync.target`." #~ "yol. Bakınız `sync.target`."
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"

View File

@@ -22,7 +22,7 @@ msgid "Please select the note or notebook to be deleted first."
msgstr "请先选择需要删除的笔记或笔记本。" msgstr "请先选择需要删除的笔记或笔记本。"
msgid "Press Ctrl+D or type \"exit\" to exit the application" msgid "Press Ctrl+D or type \"exit\" to exit the application"
msgstr "按 Ctrl+D 或输入 \"exit\" 退出程序" msgstr "按 Ctrl+D 或输入exit退出程序"
#, javascript-format #, javascript-format
msgid "More than one item match \"%s\". Please narrow down your query." msgid "More than one item match \"%s\". Please narrow down your query."
@@ -55,7 +55,7 @@ msgstr "不存在该命令:%s"
#, javascript-format #, javascript-format
msgid "The command \"%s\" is only available in GUI mode" msgid "The command \"%s\" is only available in GUI mode"
msgstr "命令 \"%s\" 仅在GUI模式下可用" msgstr "命令“%s”仅在 GUI 模式下可用"
msgid "Cannot change encrypted item" msgid "Cannot change encrypted item"
msgstr "无法更改加密项目" msgstr "无法更改加密项目"
@@ -80,7 +80,7 @@ msgstr "将选定文件添加到笔记中。"
#, javascript-format #, javascript-format
msgid "Cannot find \"%s\"." msgid "Cannot find \"%s\"."
msgstr "无法找到 \"%s\"。" msgstr "无法找到“%s”。"
msgid "Displays the given note." msgid "Displays the given note."
msgstr "显示选定笔记。" msgstr "显示选定笔记。"
@@ -119,7 +119,7 @@ msgstr "标记待办事项为完成。"
#, javascript-format #, javascript-format
msgid "Note is not a to-do: \"%s\"" msgid "Note is not a to-do: \"%s\""
msgstr "笔记非待办事项:\"%s\"" msgstr "笔记非待办事项:“%s”"
msgid "" msgid ""
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, " "Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, "
@@ -237,7 +237,7 @@ msgid ""
msgstr "通过方向键与 page up/down 键来滚动列表与文本区域(包含此控制台)。" msgstr "通过方向键与 page up/down 键来滚动列表与文本区域(包含此控制台)。"
msgid "To maximise/minimise the console, press \"tc\"." msgid "To maximise/minimise the console, press \"tc\"."
msgstr "按 \"TC\" 最大化/最小化控制台。" msgstr "按“TC”最大化/最小化控制台。"
msgid "To enter command line mode, press \":\"" msgid "To enter command line mode, press \":\""
msgstr "按“:”键进入命令行模式" msgstr "按“:”键进入命令行模式"
@@ -314,7 +314,7 @@ msgstr ""
"待办事项。" "待办事项。"
msgid "Either \"text\" or \"json\"" msgid "Either \"text\" or \"json\""
msgstr "\"text\" 或 \"json\"" msgstr "text”或“json"
msgid "" msgid ""
"Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, " "Use long list format. Format is ID, NOTE_COUNT (for notebook), DATE, "
@@ -371,6 +371,23 @@ msgstr "是否删除笔记?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "在所有笔记内搜索给定的 <pattern>。" msgstr "在所有笔记内搜索给定的 <pattern>。"
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -418,8 +435,8 @@ msgid ""
"taking place, you may delete the lock file at \"%s\" and resume the " "taking place, you may delete the lock file at \"%s\" and resume the "
"operation." "operation."
msgstr "" msgstr ""
"锁定文件已被保存。如果您确认当前未在进行任何同步,可删除锁定文件 \"%s\" 后继" "锁定文件已被保存。如果您确认当前未在进行任何同步,可删除锁定文件“%s”后继续上"
"续上一部操作。" "一部操作。"
#, javascript-format #, javascript-format
msgid "Synchronisation target: %s (%s)" msgid "Synchronisation target: %s (%s)"
@@ -442,13 +459,13 @@ msgid ""
"[tag] from [note], or to list the notes associated with [tag]. The command " "[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)." "`tag list` can be used to list all the tags (use -l for long option)."
msgstr "" msgstr ""
"<tag-command> 可以是 \"add\"、\"remove\" 或者 \"list\", 用于从 [note] 中赋值" "<tag-command> 可以是“add”、“remove”或者“list, 用于从 [note] 中赋值或删除 "
"或删除 [tag],或者列出与 [tag] 相关的笔记。`tag list` 命令可以用于列出所有的" "[tag],或者列出与 [tag] 相关的笔记。`tag list` 命令可以用于列出所有的标签(对"
"标签(对于过长选项请使用 -l 参数)。" "于过长选项请使用 -l 参数)。"
#, javascript-format #, javascript-format
msgid "Invalid command: \"%s\"" msgid "Invalid command: \"%s\""
msgstr "无效命令:\"%s\"" msgstr "无效命令:“%s”"
msgid "" msgid ""
"<todo-command> can either be \"toggle\" or \"clear\". Use \"toggle\" to " "<todo-command> can either be \"toggle\" or \"clear\". Use \"toggle\" to "
@@ -456,9 +473,9 @@ msgid ""
"target is a regular note it will be converted to a to-do). Use \"clear\" to " "target is a regular note it will be converted to a to-do). Use \"clear\" to "
"convert the to-do back to a regular note." "convert the to-do back to a regular note."
msgstr "" msgstr ""
"<todo-command> 可以是 \"toggle\" 或者 \"clear\"。使用 \"toggle\" 命令来切换待" "<todo-command> 可以是toggle”或者“clear。使用toggle命令来切换待办事项的完"
"办事项的完成状态(若目标为普通笔记则将会转换成待办事项)。使用 \"clear\" 命令" "成状态(若目标为普通笔记则将会转换成待办事项)。使用clear”命令来把待办事项转"
"来把待办事项转换到普通笔记。" "换到普通笔记。"
msgid "Marks a to-do as non-completed." msgid "Marks a to-do as non-completed."
msgstr "标记待办事项为未完成。" msgstr "标记待办事项为未完成。"
@@ -499,6 +516,10 @@ msgstr "输入 `joplin help` 获取用量信息。"
msgid "Fatal error:" msgid "Fatal error:"
msgstr "严重错误:" msgstr "严重错误:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "授权成功 - 您可以关闭此页面了。" msgstr "授权成功 - 您可以关闭此页面了。"
@@ -513,9 +534,9 @@ msgid ""
"any files outside this directory nor to any other personal data. No data " "any files outside this directory nor to any other personal data. No data "
"will be shared with any third party." "will be shared with any third party."
msgstr "" msgstr ""
"请在浏览器中打开以下链接激活该应用程序。该应用会建立 \"Apps/Joplin\" 文件目" "请在浏览器中打开以下链接激活该应用程序。该应用会建立Apps/Joplin”文件目录,并"
"录,并只会读写该目录中的文件。它没有任何权限访问此目录以外的任何文件或个人信" "只会读写该目录中的文件。它没有任何权限访问此目录以外的任何文件或个人信息。也"
"息。也不会与第三方分享任何数据。" "不会与第三方分享任何数据。"
msgid "Search:" msgid "Search:"
msgstr "搜索:" msgstr "搜索:"
@@ -545,7 +566,7 @@ msgstr ""
#, javascript-format #, javascript-format
msgid "Exporting to \"%s\" as \"%s\" format. Please wait..." msgid "Exporting to \"%s\" as \"%s\" format. Please wait..."
msgstr "从 \"%s\" 导出,导出格式为 \"%s\"。请稍等…" msgstr "从“%s”导出,导出格式为“%s”。请稍等…"
msgid "Sidebar" msgid "Sidebar"
msgstr "边栏" msgstr "边栏"
@@ -561,7 +582,7 @@ msgstr "笔记正文"
#, javascript-format #, javascript-format
msgid "Importing from \"%s\" as \"%s\" format. Please wait..." msgid "Importing from \"%s\" as \"%s\" format. Please wait..."
msgstr "从 \"%s\" 导入,导入格式为 \"%s\" 。请稍等…" msgstr "从“%s”导入,导入格式为“%s”。请稍等…"
msgid "PDF File" msgid "PDF File"
msgstr "PDF 文件" msgstr "PDF 文件"
@@ -590,6 +611,27 @@ msgstr "加密选项"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "网页剪辑选项" msgstr "网页剪辑选项"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "插入时间"
#, fuzzy
msgid "Open template directory"
msgstr "Joplin 导出目录"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -606,6 +648,9 @@ msgstr "偏好……"
msgid "Check for updates..." msgid "Check for updates..."
msgstr "检查更新..." msgstr "检查更新..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "导入" msgstr "导入"
@@ -649,12 +694,18 @@ msgstr "斜体"
msgid "Link" msgid "Link"
msgstr "链接" msgstr "链接"
msgid "Code"
msgstr "代码"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "插入时间" msgstr "插入时间"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "在外部编辑器中打开" msgstr "在外部编辑器中打开"
msgid "Tags"
msgstr "标签"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "在所有笔记内搜索" msgstr "在所有笔记内搜索"
@@ -682,11 +733,15 @@ msgstr "帮助 (&H)"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "网站与文档" msgstr "网站与文档"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin v%s"
msgid "Make a donation" msgid "Make a donation"
msgstr "捐赠" msgstr "捐赠"
msgid "Toggle development tools" msgid "Toggle development tools"
msgstr "" msgstr "切换开发者工具"
#, javascript-format #, javascript-format
msgid "Open %s" msgid "Open %s"
@@ -874,8 +929,8 @@ msgstr ""
"能通过同步下载。" "能通过同步下载。"
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "有关端到端加密(E2EE)的更多信息,以及如何启用它的建议,请查看文档:" msgstr "有关端到端加密(E2EE)的更多信息,以及如何启用它的建议,请查看文档:"
msgid "Status" msgid "Status"
@@ -893,7 +948,7 @@ msgstr "返回"
#, javascript-format #, javascript-format
msgid "" msgid ""
"New notebook \"%s\" will be created and file \"%s\" will be imported into it" "New notebook \"%s\" will be created and file \"%s\" will be imported into it"
msgstr "将新建的笔记本“%s”,并将文件 \"%s\" 导入其中" msgstr "将新建的笔记本“%s”,并将文件“%s”导入其中"
msgid "Please create a notebook first." msgid "Please create a notebook first."
msgstr "请先创建笔记本。" msgstr "请先创建笔记本。"
@@ -916,6 +971,9 @@ msgstr "重命名标签:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "设置提醒:" msgstr "设置提醒:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "布局" msgstr "布局"
@@ -928,19 +986,18 @@ msgstr "一些项目无法被同步。"
msgid "View them now" msgid "View them now"
msgstr "立刻查看" msgstr "立刻查看"
#, fuzzy
msgid "One or more master keys need a password." msgid "One or more master keys need a password."
msgstr "输入主密码:" msgstr "一个或多个主密钥需要密码。"
msgid "Set the password" msgid "Set the password"
msgstr "设置密码" msgstr "设置密码"
msgid "No notes in here. Create one by clicking on \"New note\"." msgid "No notes in here. Create one by clicking on \"New note\"."
msgstr "此处没有任何笔记。点击\"新建笔记\"创建。" msgstr "此处没有任何笔记。点击新建笔记创建。"
msgid "" msgid ""
"There is currently no notebook. Create one by clicking on \"New notebook\"." "There is currently no notebook. Create one by clicking on \"New notebook\"."
msgstr "此处没有任何笔记本。点击\"新建笔记本\"创建。" msgstr "此处没有任何笔记本。点击新建笔记本创建。"
msgid "Location" msgid "Location"
msgstr "位置" msgstr "位置"
@@ -951,6 +1008,9 @@ msgstr "URL"
msgid "Note History" msgid "Note History"
msgstr "笔记历史" msgstr "笔记历史"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "此笔记的早期版本" msgstr "此笔记的早期版本"
@@ -959,7 +1019,7 @@ msgstr "笔记属性"
#, javascript-format #, javascript-format
msgid "The note \"%s\" has been successfully restored to the notebook \"%s\"." msgid "The note \"%s\" has been successfully restored to the notebook \"%s\"."
msgstr "笔记\"%s\"已成功恢复到笔记本\"%s\"中。" msgstr "笔记“%s”已成功恢复到笔记本“%s”中。"
msgid "This note has no history" msgid "This note has no history"
msgstr "此笔记没有历史记录" msgstr "此笔记没有历史记录"
@@ -972,8 +1032,8 @@ msgid ""
"Click \"%s\" to restore the note. It will be copied in the notebook named " "Click \"%s\" to restore the note. It will be copied in the notebook named "
"\"%s\". The current version of the note will not be replaced or modified." "\"%s\". The current version of the note will not be replaced or modified."
msgstr "" msgstr ""
"单击 \"%s\" 以恢复笔记。它将会被复制到名为 \"%s\" 的笔记本中。笔记的当前版本" "单击“%s”以恢复笔记。它将会被复制到名为“%s”的笔记本中。笔记的当前版本不会被替"
"不会被替换或修改。" "换或修改。"
msgid "Open..." msgid "Open..."
msgstr "打开…" msgstr "打开…"
@@ -1022,9 +1082,6 @@ msgstr "插入超链接"
msgid "Attach file" msgid "Attach file"
msgstr "附加文件" msgstr "附加文件"
msgid "Tags"
msgstr "标签"
msgid "Set alarm" msgid "Set alarm"
msgstr "设置提醒" msgstr "设置提醒"
@@ -1035,9 +1092,6 @@ msgstr "在: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "超链接" msgstr "超链接"
msgid "Code"
msgstr "代码"
msgid "Numbered List" msgid "Numbered List"
msgstr "有序列表" msgstr "有序列表"
@@ -1116,22 +1170,11 @@ msgstr "删除"
msgid "Rename" msgid "Rename"
msgstr "重命名" msgstr "重命名"
msgid "Notebooks"
msgstr "笔记本"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "正在解密项目:%d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "正在获取资源:%d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "请选择同步状态的导出位置" msgstr "请选择同步状态的导出位置"
msgid "Retry" msgid "Retry"
msgstr "" msgstr "重试"
msgid "Add or remove tags" msgid "Add or remove tags"
msgstr "添加或删除标签" msgstr "添加或删除标签"
@@ -1306,7 +1349,7 @@ msgstr "无法移动笔记本到该位置"
#, javascript-format #, javascript-format
msgid "Notebooks cannot be named \"%s\", which is a reserved title." msgid "Notebooks cannot be named \"%s\", which is a reserved title."
msgstr "笔记本无法被命名为 \"%s\",这个标题被留作他用。" msgstr "笔记本无法被命名为“%s”,这个标题被留作他用。"
msgid "created date" msgid "created date"
msgstr "创建日期" msgstr "创建日期"
@@ -1362,25 +1405,27 @@ msgid "WebDAV password"
msgstr "WebDAV 密码" msgstr "WebDAV 密码"
msgid "Attachment download behaviour" msgid "Attachment download behaviour"
msgstr "" msgstr "附件下载行为"
msgid "" msgid ""
"In \"Manual\" mode, attachments are downloaded only when you click on them. " "In \"Manual\" mode, attachments are downloaded only when you click on them. "
"In \"Auto\", they are downloaded when you open the note. In \"Always\", all " "In \"Auto\", they are downloaded when you open the note. In \"Always\", all "
"the attachments are downloaded whether you open the note or not." "the attachments are downloaded whether you open the note or not."
msgstr "" msgstr ""
"在“手动”模式下,只有单击附件时才会下载它们。在“自动”中,当你打开笔记时,它们"
"就会被下载下来。在“总是”中,无论你是否打开笔记,所有的附件都会被下载。"
msgid "Always" msgid "Always"
msgstr "" msgstr "总是"
msgid "Manual" msgid "Manual"
msgstr "" msgstr "手动"
msgid "Auto" msgid "Auto"
msgstr "" msgstr "自动"
msgid "Max concurrent connections" msgid "Max concurrent connections"
msgstr "" msgstr "最大并发连接数"
msgid "Language" msgid "Language"
msgstr "语言" msgstr "语言"
@@ -1400,6 +1445,12 @@ msgstr "明亮"
msgid "Dark" msgid "Dark"
msgstr "深邃" msgstr "深邃"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "将未完成的待办事项置顶" msgstr "将未完成的待办事项置顶"
@@ -1466,6 +1517,10 @@ msgstr "启用 ++insert++ 句法"
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "启用 multimarkdown 表格扩展" msgstr "启用 multimarkdown 表格扩展"
#, fuzzy
msgid "Enable Fountain syntax support"
msgstr "启用 ~sub~ 句法"
msgid "Show tray icon" msgid "Show tray icon"
msgstr "显示托盘图标" msgstr "显示托盘图标"
@@ -1534,9 +1589,6 @@ msgstr ""
"该文本编辑器命令(可能包括参数)将会被用于打开笔记。若未提供将尝试自动检测默" "该文本编辑器命令(可能包括参数)将会被用于打开笔记。若未提供将尝试自动检测默"
"认编辑器。" "认编辑器。"
msgid "Show advanced options"
msgstr "显示高级选项"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "自定义 TLS 证书" msgstr "自定义 TLS 证书"
@@ -1553,6 +1605,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "忽略 TLS 证书错误" msgstr "忽略 TLS 证书错误"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
msgid "Enable note history" msgid "Enable note history"
msgstr "启用笔记历史" msgstr "启用笔记历史"
@@ -1564,11 +1621,11 @@ msgid "%d days"
msgstr "" msgstr ""
msgid "Keep note history for" msgid "Keep note history for"
msgstr "" msgstr "保留笔记历史记录"
#, javascript-format #, javascript-format
msgid "Invalid option value: \"%s\". Possible values are: %s." msgid "Invalid option value: \"%s\". Possible values are: %s."
msgstr "无效的选项值:\"%s\"。可用值有:%s。" msgstr "无效的选项值:“%s”。可用值有:%s。"
msgid "General" msgid "General"
msgstr "通用选项" msgstr "通用选项"
@@ -1590,7 +1647,7 @@ msgstr "应用程序"
#, javascript-format #, javascript-format
msgid "The tag \"%s\" already exists. Please choose a different name." msgid "The tag \"%s\" already exists. Please choose a different name."
msgstr "标签 \"%s\" 已存在。请选择一个不同的名称。" msgstr "标签“%s”已存在。请选择一个不同的名称。"
msgid "Joplin Export File" msgid "Joplin Export File"
msgstr "Joplin 导出文件" msgstr "Joplin 导出文件"
@@ -1615,7 +1672,7 @@ msgstr "文件目录"
#, javascript-format #, javascript-format
msgid "Cannot load \"%s\" module for format \"%s\"" msgid "Cannot load \"%s\" module for format \"%s\""
msgstr "无法加载 \"%s\" 模块用于读取 \"%s\" 格式" msgstr "无法加载“%s”模块用于读取“%s”格式"
#, javascript-format #, javascript-format
msgid "Please specify import format for %s" msgid "Please specify import format for %s"
@@ -1625,7 +1682,7 @@ msgstr "请指定 %s 的导入格式"
msgid "" msgid ""
"This item is currently encrypted: %s \"%s\". Please wait for all items to be " "This item is currently encrypted: %s \"%s\". Please wait for all items to be "
"decrypted and try again." "decrypted and try again."
msgstr "该项目当前已加密:%s \"%s\"。请等待所有项目解密后再重试。" msgstr "该项目当前已加密:%s“%s”。请等待所有项目解密后再重试。"
msgid "There is no data to export." msgid "There is no data to export."
msgstr "没有可导出的数据。" msgstr "没有可导出的数据。"
@@ -1653,17 +1710,18 @@ msgstr "%s (%s) 无法上传到:%s"
#, javascript-format #, javascript-format
msgid "Item \"%s\" could not be downloaded: %s" msgid "Item \"%s\" could not be downloaded: %s"
msgstr "项目 \"%s\" 无法从 %s 中下载" msgstr "项目“%s”无法从 %s 中下载"
#, fuzzy
msgid "Items that cannot be decrypted" msgid "Items that cannot be decrypted"
msgstr "无法同步项目" msgstr "无法解密的项目"
msgid "" msgid ""
"Joplin failed to decrypt these items multiple times, possibly because they " "Joplin failed to decrypt these items multiple times, possibly because they "
"are corrupted or too large. These items will remain on the device but Joplin " "are corrupted or too large. These items will remain on the device but Joplin "
"will no longer attempt to decrypt them." "will no longer attempt to decrypt them."
msgstr "" msgstr ""
"Joplin 多次解密这些项目均已失败,可能是它们太大或已经损坏导致的。这些项目会保"
"留再设备上,但 Joplin 不会再尝试对它们进行解密。"
msgid "Sync status (synced items / total items)" msgid "Sync status (synced items / total items)"
msgstr "同步状态(已同步项目/项目总数)" msgstr "同步状态(已同步项目/项目总数)"
@@ -1704,24 +1762,20 @@ msgstr "使用摄像头的权限"
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "您须要授予相机权限。" msgstr "您须要授予相机权限。"
#, fuzzy
msgid "You currently have no notebooks."
msgstr "无活动笔记本。"
#, fuzzy
msgid "Create a notebook"
msgstr "新建笔记本。"
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "当前没有任何笔记。点击 (+) 按钮创建。" msgstr "当前没有任何笔记。点击 (+) 按钮创建。"
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "是否删除这些笔记?" msgstr "是否删除这些笔记?"
msgid "Log"
msgstr "日志"
msgid "Export Debug Report"
msgstr "导出调试报告"
msgid "Encryption Config"
msgstr "加密配置"
msgid "Configuration"
msgstr "配置"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "移动到笔记本..." msgstr "移动到笔记本..."
@@ -1744,8 +1798,35 @@ msgstr "选择日期"
msgid "Confirm" msgid "Confirm"
msgstr "确认" msgstr "确认"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "取消同步" msgid "Notebook: %s"
msgstr "笔记本"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "无法修改已加密的项目"
#, fuzzy
msgid "New Notebook"
msgstr "新建笔记本"
msgid "Configuration"
msgstr "配置"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "正在解密项目:%d/%d"
#, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "正在获取资源:%d/%d"
#, fuzzy
msgid "All notes"
msgstr "笔记"
msgid "Notebooks"
msgstr "笔记本"
msgid "Checking... Please wait." msgid "Checking... Please wait."
msgstr "正在检查... 请稍候。" msgstr "正在检查... 请稍候。"
@@ -1787,9 +1868,52 @@ msgstr "新建标签:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "输入新的标签或从列表中选择" msgstr "输入新的标签或从列表中选择"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy #, fuzzy
msgid "Information"
msgstr "更多信息"
msgid "Encryption Config"
msgstr "加密配置"
#, fuzzy
msgid "Tools"
msgstr "工具 (&T)"
#, fuzzy
msgid "Sync Status"
msgstr "状态"
msgid "Log"
msgstr "日志"
#, fuzzy
msgid "Creating report..."
msgstr "新建 %s…"
msgid "Export Debug Report"
msgstr "导出调试报告"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
msgid "More information" msgid "More information"
msgstr "配置" msgstr "更多信息"
msgid "" msgid ""
"To work correctly, the app needs the following permissions. Please enable " "To work correctly, the app needs the following permissions. Please enable "
@@ -1850,6 +1974,10 @@ msgstr "该笔记本无法保存:%s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "编辑笔记本" msgstr "编辑笔记本"
#, fuzzy
msgid "Enter notebook title"
msgstr "笔记本标题:"
msgid "Show all" msgid "Show all"
msgstr "显示全部" msgstr "显示全部"
@@ -1873,10 +2001,32 @@ msgstr "没有 ID 为 %s 的项"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "Joplin 手机应用目前不支持这种类型的链接:%s" msgstr "Joplin 手机应用目前不支持这种类型的链接:%s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr "不支持“%s”协议链接"
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "不支持的图片格式:%s" msgstr "不支持的图片格式:%s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "已更新:%d条。"
msgid "View on map"
msgstr "查看地图"
msgid "Go to source URL"
msgstr "定位到源 URL"
#, fuzzy
msgid "Attach..."
msgstr "搜索..."
#, fuzzy
msgid "Choose an option"
msgstr "显示高级选项"
msgid "Take photo" msgid "Take photo"
msgstr "拍照" msgstr "拍照"
@@ -1895,23 +2045,19 @@ msgstr "转换为笔记"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "转换为待办事项" msgstr "转换为待办事项"
msgid "Hide metadata" #, fuzzy
msgstr "隐藏元数据" msgid "Properties"
msgstr "笔记属性"
msgid "Show metadata" msgid "Add body"
msgstr "显示元数据" msgstr ""
msgid "View on map"
msgstr "查看地图"
msgid "Go to source URL"
msgstr "定位到源 URL"
msgid "Edit" msgid "Edit"
msgstr "编辑" msgstr "编辑"
msgid "Delete notebook" #, fuzzy
msgstr "删除笔记本" msgid "Add title"
msgstr "标题"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "通过 OneDrive 登录" msgstr "通过 OneDrive 登录"
@@ -1919,16 +2065,33 @@ msgstr "通过 OneDrive 登录"
msgid "Search" msgid "Search"
msgstr "搜索" msgstr "搜索"
msgid "" #, fuzzy
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgid "Permission to write to external storage"
"menu to access your existing notebooks." #~ msgstr "使用摄像头的权限"
msgstr "单击 (+) 按钮新建笔记或笔记本。单击切换侧边栏来访问现有的笔记本。"
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Cancel synchronisation"
msgstr "您目前未有笔记本。点击 (+) 按钮创建。" #~ msgstr "取消同步"
msgid "Welcome" #~ msgid "Hide metadata"
msgstr "欢迎" #~ msgstr "隐藏元数据"
#~ msgid "Show metadata"
#~ msgstr "显示元数据"
#~ msgid "Delete notebook"
#~ msgstr "删除笔记本"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr "单击 (+) 按钮新建笔记或笔记本。单击切换侧边栏来访问现有的笔记本。"
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "您目前未有笔记本。点击 (+) 按钮创建。"
#~ msgid "Welcome"
#~ msgstr "欢迎"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "用半角逗号“,”分开每个标签。" #~ msgstr "用半角逗号“,”分开每个标签。"
@@ -1947,9 +2110,6 @@ msgstr "欢迎"
#~ "See `sync.target`." #~ "See `sync.target`."
#~ msgstr "启用文件系统同步时要同步的路径。见 `sync.target`。" #~ msgstr "启用文件系统同步时要同步的路径。见 `sync.target`。"
#~ msgid "Joplin v%s"
#~ msgstr "Joplin v%s"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "状态:%s。" #~ msgstr "状态:%s。"

View File

@@ -372,6 +372,23 @@ msgstr "刪除記事?"
msgid "Searches for the given <pattern> in all the notes." msgid "Searches for the given <pattern> in all the notes."
msgstr "在所有記事中搜索特定的 <pattern>。" msgstr "在所有記事中搜索特定的 <pattern>。"
#, javascript-format
msgid ""
"Start, stop or check the API server. To specify on which port it should run, "
"set the api.port config variable. Commands are (%s)."
msgstr ""
#, javascript-format
msgid "Server is already running on port %d"
msgstr ""
#, javascript-format
msgid "Server is running on port %d"
msgstr ""
msgid "Server is not running."
msgstr ""
#, javascript-format #, javascript-format
msgid "" msgid ""
"Sets the property <name> of the given <note> to the given [value]. Possible " "Sets the property <name> of the given <note> to the given [value]. Possible "
@@ -501,6 +518,10 @@ msgstr "鍵入 `joplin help` 檢視使用說明。"
msgid "Fatal error:" msgid "Fatal error:"
msgstr "嚴重錯誤:" msgstr "嚴重錯誤:"
#, javascript-format
msgid "All potential ports are in use - please report the issue at %s"
msgstr ""
msgid "" msgid ""
"The application has been authorised - you may now close this browser tab." "The application has been authorised - you may now close this browser tab."
msgstr "應用程式已取得權限 - 您現在可以關閉此瀏覽器分頁。" msgstr "應用程式已取得權限 - 您現在可以關閉此瀏覽器分頁。"
@@ -594,6 +615,27 @@ msgstr "加密選項"
msgid "Web clipper options" msgid "Web clipper options"
msgstr "Web clipper 選項" msgstr "Web clipper 選項"
msgid "Create note from template"
msgstr ""
msgid "Create to-do from template"
msgstr ""
#, fuzzy
msgid "Insert template"
msgstr "插入日期時間"
#, fuzzy
msgid "Open template directory"
msgstr "Joplin 匯出目錄"
msgid "Refresh templates"
msgstr ""
#, fuzzy, javascript-format
msgid "Revision: %s (%s)"
msgstr "%s %s (%s)"
#, javascript-format #, javascript-format
msgid "%s %s (%s, %s)" msgid "%s %s (%s, %s)"
msgstr "%s %s (%s, %s)" msgstr "%s %s (%s, %s)"
@@ -611,6 +653,9 @@ msgstr ""
msgid "Check for updates..." msgid "Check for updates..."
msgstr "檢查更新..." msgstr "檢查更新..."
msgid "Templates"
msgstr ""
msgid "Import" msgid "Import"
msgstr "匯入" msgstr "匯入"
@@ -656,12 +701,18 @@ msgstr "斜體"
msgid "Link" msgid "Link"
msgstr "" msgstr ""
msgid "Code"
msgstr "引言"
msgid "Insert Date Time" msgid "Insert Date Time"
msgstr "插入日期時間" msgstr "插入日期時間"
msgid "Edit in external editor" msgid "Edit in external editor"
msgstr "使用外部編輯器編輯" msgstr "使用外部編輯器編輯"
msgid "Tags"
msgstr "標籤"
msgid "Search in all the notes" msgid "Search in all the notes"
msgstr "在所有記事中搜尋" msgstr "在所有記事中搜尋"
@@ -694,6 +745,10 @@ msgstr "說明"
msgid "Website and documentation" msgid "Website and documentation"
msgstr "官方網站及線上說明" msgstr "官方網站及線上說明"
#, fuzzy
msgid "Joplin Forum"
msgstr "Joplin 官方網站"
msgid "Make a donation" msgid "Make a donation"
msgstr "捐助" msgstr "捐助"
@@ -887,8 +942,8 @@ msgstr ""
"可能最終會通過同步下載。" "可能最終會通過同步下載。"
msgid "" msgid ""
"For more information about End-To-End Encryption (E2EE) and advices on how " "For more information about End-To-End Encryption (E2EE) and advice on how to "
"to enable it please check the documentation:" "enable it please check the documentation:"
msgstr "有關端到端加密 (E2EE) 的詳細資訊以及該如何啟用它,請參考線上文檔:" msgstr "有關端到端加密 (E2EE) 的詳細資訊以及該如何啟用它,請參考線上文檔:"
msgid "Status" msgid "Status"
@@ -930,6 +985,9 @@ msgstr "重新命名標籤:"
msgid "Set alarm:" msgid "Set alarm:"
msgstr "設置提醒:" msgstr "設置提醒:"
msgid "Template file:"
msgstr ""
msgid "Layout" msgid "Layout"
msgstr "頁面佈局" msgstr "頁面佈局"
@@ -966,6 +1024,9 @@ msgstr ""
msgid "Note History" msgid "Note History"
msgstr "記事本" msgstr "記事本"
msgid "Markup"
msgstr ""
msgid "Previous versions of this note" msgid "Previous versions of this note"
msgstr "" msgstr ""
@@ -1036,9 +1097,6 @@ msgstr "插入超連結"
msgid "Attach file" msgid "Attach file"
msgstr "附加檔案" msgstr "附加檔案"
msgid "Tags"
msgstr "標籤"
msgid "Set alarm" msgid "Set alarm"
msgstr "設置提醒" msgstr "設置提醒"
@@ -1049,9 +1107,6 @@ msgstr "在: %s"
msgid "Hyperlink" msgid "Hyperlink"
msgstr "超連結" msgstr "超連結"
msgid "Code"
msgstr "引言"
msgid "Numbered List" msgid "Numbered List"
msgstr "編號清單" msgstr "編號清單"
@@ -1127,17 +1182,6 @@ msgstr "刪除"
msgid "Rename" msgid "Rename"
msgstr "重新命名" msgstr "重新命名"
msgid "Notebooks"
msgstr "記事本"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "正在解密項目: %d/%d 項"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "資源: %d/%d"
msgid "Please select where the sync status should be exported to" msgid "Please select where the sync status should be exported to"
msgstr "請選擇將同步狀態導出到的位置" msgstr "請選擇將同步狀態導出到的位置"
@@ -1410,6 +1454,12 @@ msgstr "光亮"
msgid "Dark" msgid "Dark"
msgstr "暗黑" msgstr "暗黑"
msgid "Solarised Light"
msgstr ""
msgid "Solarised Dark"
msgstr ""
msgid "Uncompleted to-dos on top" msgid "Uncompleted to-dos on top"
msgstr "最上方顯示未完成的待辦事項" msgstr "最上方顯示未完成的待辦事項"
@@ -1478,6 +1528,9 @@ msgstr ""
msgid "Enable multimarkdown table extension" msgid "Enable multimarkdown table extension"
msgstr "" msgstr ""
msgid "Enable Fountain syntax support"
msgstr ""
msgid "Show tray icon" msgid "Show tray icon"
msgstr "顯示系統匣圖示" msgstr "顯示系統匣圖示"
@@ -1545,9 +1598,6 @@ msgstr ""
"用於開啟筆記的編輯器命令 (可能包括參數)。如果沒有指明,程式將嘗試自動檢測預設" "用於開啟筆記的編輯器命令 (可能包括參數)。如果沒有指明,程式將嘗試自動檢測預設"
"的編輯器。" "的編輯器。"
msgid "Show advanced options"
msgstr "顯示進階選項"
msgid "Custom TLS certificates" msgid "Custom TLS certificates"
msgstr "自訂 TLS 證書" msgstr "自訂 TLS 證書"
@@ -1564,6 +1614,11 @@ msgstr ""
msgid "Ignore TLS certificate errors" msgid "Ignore TLS certificate errors"
msgstr "忽略 TLS 證書錯誤" msgstr "忽略 TLS 證書錯誤"
msgid ""
"Specify the port that should be used by the API server. If not set, a "
"default will be used."
msgstr ""
#, fuzzy #, fuzzy
msgid "Enable note history" msgid "Enable note history"
msgstr "啟用加密" msgstr "啟用加密"
@@ -1721,24 +1776,20 @@ msgstr ""
msgid "Your permission to use your camera is required." msgid "Your permission to use your camera is required."
msgstr "" msgstr ""
#, fuzzy
msgid "You currently have no notebooks."
msgstr "無使用中的記事本。"
#, fuzzy
msgid "Create a notebook"
msgstr "新增記事本。"
msgid "There are currently no notes. Create one by clicking on the (+) button." msgid "There are currently no notes. Create one by clicking on the (+) button."
msgstr "您當前沒有任何筆記。通過按一下 (+) 鍵去新增一則筆記。" msgstr "您當前沒有任何筆記。通過按一下 (+) 鍵去新增一則筆記。"
msgid "Delete these notes?" msgid "Delete these notes?"
msgstr "刪除這些記事?" msgstr "刪除這些記事?"
msgid "Log"
msgstr "日誌"
msgid "Export Debug Report"
msgstr "匯出除錯報告"
msgid "Encryption Config"
msgstr "加密設置"
msgid "Configuration"
msgstr "設置"
msgid "Move to notebook..." msgid "Move to notebook..."
msgstr "移動至記事本..." msgstr "移動至記事本..."
@@ -1762,8 +1813,35 @@ msgstr "選擇日期"
msgid "Confirm" msgid "Confirm"
msgstr "確認" msgstr "確認"
msgid "Cancel synchronisation" #, fuzzy, javascript-format
msgstr "取消同步" msgid "Notebook: %s"
msgstr "記事本"
#, fuzzy
msgid "Encrypted notebooks cannot be renamed"
msgstr "無法修改已加密項目"
#, fuzzy
msgid "New Notebook"
msgstr "新增記事本"
msgid "Configuration"
msgstr "設置"
#, javascript-format
msgid "Decrypting items: %d/%d"
msgstr "正在解密項目: %d/%d 項"
#, fuzzy, javascript-format
msgid "Fetching resources: %d/%d"
msgstr "資源: %d/%d"
#, fuzzy
msgid "All notes"
msgstr "記事"
msgid "Notebooks"
msgstr "記事本"
#, fuzzy #, fuzzy
msgid "Checking... Please wait." msgid "Checking... Please wait."
@@ -1801,6 +1879,50 @@ msgstr "新增標籤:"
msgid "Type new tags or select from list" msgid "Type new tags or select from list"
msgstr "輸入新標籤,或在清單中選擇" msgstr "輸入新標籤,或在清單中選擇"
msgid "Warning"
msgstr ""
msgid ""
"In order to use file system synchronisation your permission to write to "
"external storage is required."
msgstr ""
#, fuzzy
msgid "Information"
msgstr "設置"
msgid "Encryption Config"
msgstr "加密設置"
#, fuzzy
msgid "Tools"
msgstr "工具"
#, fuzzy
msgid "Sync Status"
msgstr "狀態"
msgid "Log"
msgstr "日誌"
#, fuzzy
msgid "Creating report..."
msgstr "建立新 %s..."
msgid "Export Debug Report"
msgstr "匯出除錯報告"
msgid "Fixing search index..."
msgstr ""
msgid "Fix search index"
msgstr ""
msgid ""
"Use this to rebuild the search index if there is a problem with search. It "
"may take a long time depending on the number of notes."
msgstr ""
#, fuzzy #, fuzzy
msgid "More information" msgid "More information"
msgstr "設置" msgstr "設置"
@@ -1864,6 +1986,10 @@ msgstr "無法儲存記事本: %s"
msgid "Edit notebook" msgid "Edit notebook"
msgstr "編輯記事本" msgstr "編輯記事本"
#, fuzzy
msgid "Enter notebook title"
msgstr "記事本標題:"
msgid "Show all" msgid "Show all"
msgstr "顯示全部" msgstr "顯示全部"
@@ -1887,10 +2013,32 @@ msgstr "沒有 ID 為 %s 的項目"
msgid "The Joplin mobile app does not currently support this type of link: %s" msgid "The Joplin mobile app does not currently support this type of link: %s"
msgstr "Joplin 移動應用程式暫時不支援此類型的連結: %s" msgstr "Joplin 移動應用程式暫時不支援此類型的連結: %s"
#, javascript-format
msgid "Links with protocol \"%s\" are not supported"
msgstr ""
#, javascript-format #, javascript-format
msgid "Unsupported image type: %s" msgid "Unsupported image type: %s"
msgstr "不支援的圖像類型: %s" msgstr "不支援的圖像類型: %s"
#, fuzzy, javascript-format
msgid "Updated: %s"
msgstr "已更新: %d。"
msgid "View on map"
msgstr "在地圖上顯示"
msgid "Go to source URL"
msgstr ""
#, fuzzy
msgid "Attach..."
msgstr "搜尋..."
#, fuzzy
msgid "Choose an option"
msgstr "顯示進階選項"
#, fuzzy #, fuzzy
msgid "Take photo" msgid "Take photo"
msgstr "附加相片" msgstr "附加相片"
@@ -1910,23 +2058,18 @@ msgstr "轉換為記事"
msgid "Convert to todo" msgid "Convert to todo"
msgstr "轉換為待辦事項" msgstr "轉換為待辦事項"
msgid "Hide metadata" msgid "Properties"
msgstr "隱藏後設資料 (metadata)" msgstr ""
msgid "Show metadata" msgid "Add body"
msgstr "顯示後設資料 (metadata)"
msgid "View on map"
msgstr "在地圖上顯示"
msgid "Go to source URL"
msgstr "" msgstr ""
msgid "Edit" msgid "Edit"
msgstr "編輯" msgstr "編輯"
msgid "Delete notebook" #, fuzzy
msgstr "刪除記事本" msgid "Add title"
msgstr "標題"
msgid "Login with OneDrive" msgid "Login with OneDrive"
msgstr "以 OneDrive 登錄" msgstr "以 OneDrive 登錄"
@@ -1934,16 +2077,29 @@ msgstr "以 OneDrive 登錄"
msgid "Search" msgid "Search"
msgstr "搜尋" msgstr "搜尋"
msgid "" #~ msgid "Cancel synchronisation"
"Click on the (+) button to create a new note or notebook. Click on the side " #~ msgstr "取消同步"
"menu to access your existing notebooks."
msgstr "您可以點撃 (+) 鍵去新增記事或記事本。點撃側邊欄去檢視現有的記事本。"
msgid "You currently have no notebook. Create one by clicking on (+) button." #~ msgid "Hide metadata"
msgstr "您當前沒有任何筆記本。通過按一下 (+) 鍵去建立一本筆記。" #~ msgstr "隱藏後設資料 (metadata)"
msgid "Welcome" #~ msgid "Show metadata"
msgstr "歡迎" #~ msgstr "顯示後設資料 (metadata)"
#~ msgid "Delete notebook"
#~ msgstr "刪除記事本"
#~ msgid ""
#~ "Click on the (+) button to create a new note or notebook. Click on the "
#~ "side menu to access your existing notebooks."
#~ msgstr "您可以點撃 (+) 鍵去新增記事或記事本。點撃側邊欄去檢視現有的記事本。"
#~ msgid ""
#~ "You currently have no notebook. Create one by clicking on (+) button."
#~ msgstr "您當前沒有任何筆記本。通過按一下 (+) 鍵去建立一本筆記。"
#~ msgid "Welcome"
#~ msgstr "歡迎"
#~ msgid "Separate each tag by a comma." #~ msgid "Separate each tag by a comma."
#~ msgstr "您可用逗號分隔每個標籤。" #~ msgstr "您可用逗號分隔每個標籤。"
@@ -1959,10 +2115,6 @@ msgstr "歡迎"
#~ "See `sync.target`." #~ "See `sync.target`."
#~ msgstr "啟用檔案系統同步時要同步的路徑。請參閱 `sync.target`。" #~ msgstr "啟用檔案系統同步時要同步的路徑。請參閱 `sync.target`。"
#, fuzzy
#~ msgid "Joplin v%s"
#~ msgstr "Joplin 官方網站"
#~ msgid "State: %s." #~ msgid "State: %s."
#~ msgstr "狀態: %s。" #~ msgstr "狀態: %s。"

File diff suppressed because it is too large Load Diff

View File

@@ -20,7 +20,7 @@
], ],
"owner": "Laurent Cozic" "owner": "Laurent Cozic"
}, },
"version": "1.0.140", "version": "1.0.146",
"bin": { "bin": {
"joplin": "./main.js" "joplin": "./main.js"
}, },
@@ -43,15 +43,15 @@
"html-minifier": "^3.5.15", "html-minifier": "^3.5.15",
"image-data-uri": "^2.0.0", "image-data-uri": "^2.0.0",
"image-type": "^3.0.0", "image-type": "^3.0.0",
"joplin-turndown": "^4.0.12", "joplin-turndown": "^4.0.17",
"joplin-turndown-plugin-gfm": "^1.0.8", "joplin-turndown-plugin-gfm": "^1.0.8",
"jssha": "^2.3.0", "jssha": "^2.3.0",
"levenshtein": "^1.0.5", "levenshtein": "^1.0.5",
"lodash": "^4.17.4",
"markdown-it": "^8.4.2", "markdown-it": "^8.4.2",
"md5": "^2.2.1", "md5": "^2.2.1",
"mime": "^2.0.3", "mime": "^2.0.3",
"moment": "^2.18.1", "moment": "^2.24.0",
"multiparty": "^4.2.1",
"node-emoji": "^1.8.1", "node-emoji": "^1.8.1",
"node-fetch": "^1.7.1", "node-fetch": "^1.7.1",
"node-persist": "^2.1.0", "node-persist": "^2.1.0",
@@ -60,6 +60,7 @@
"query-string": "4.3.4", "query-string": "4.3.4",
"read-chunk": "^2.1.0", "read-chunk": "^2.1.0",
"redux": "^3.7.2", "redux": "^3.7.2",
"request": "^2.88.0",
"sax": "^1.2.2", "sax": "^1.2.2",
"server-destroy": "^1.0.1", "server-destroy": "^1.0.1",
"sharp": "^0.22.1", "sharp": "^0.22.1",
@@ -69,10 +70,11 @@
"string-to-stream": "^1.1.0", "string-to-stream": "^1.1.0",
"strip-ansi": "^4.0.0", "strip-ansi": "^4.0.0",
"syswide-cas": "^5.2.0", "syswide-cas": "^5.2.0",
"tar": "^4.4.0", "tar": "^4.4.10",
"tcp-port-used": "^0.1.2", "tcp-port-used": "^0.1.2",
"terminal-kit": "^1.30.0",
"tkwidgets": "^0.5.26", "tkwidgets": "^0.5.26",
"url-parse": "^1.2.0", "url-parse": "^1.4.7",
"uuid": "^3.0.1", "uuid": "^3.0.1",
"valid-url": "^1.0.9", "valid-url": "^1.0.9",
"word-wrap": "^1.2.3", "word-wrap": "^1.2.3",

View File

@@ -1,3 +1,5 @@
/* eslint-disable no-unused-vars */
require('app-module-path').addPath(__dirname); require('app-module-path').addPath(__dirname);
const { time } = require('lib/time-utils.js'); const { time } = require('lib/time-utils.js');
@@ -53,4 +55,4 @@ describe('ArrayUtils', function() {
done(); done();
}); });
}); });

View File

@@ -1,3 +1,5 @@
/* eslint-disable no-unused-vars */
require('app-module-path').addPath(__dirname); require('app-module-path').addPath(__dirname);
const os = require('os'); const os = require('os');
@@ -27,7 +29,7 @@ describe('EnexToMd', function() {
it('should convert from Enex to Markdown', asyncTest(async () => { it('should convert from Enex to Markdown', asyncTest(async () => {
const basePath = __dirname + '/enex_to_md'; const basePath = __dirname + '/enex_to_md';
const files = await shim.fsDriver().readDirStats(basePath); const files = await shim.fsDriver().readDirStats(basePath);
for (let i = 0; i < files.length; i++) { for (let i = 0; i < files.length; i++) {
const htmlFilename = files[i].path; const htmlFilename = files[i].path;
if (htmlFilename.indexOf('.html') < 0) continue; if (htmlFilename.indexOf('.html') < 0) continue;
@@ -35,16 +37,16 @@ describe('EnexToMd', function() {
const htmlPath = basePath + '/' + htmlFilename; const htmlPath = basePath + '/' + htmlFilename;
const mdPath = basePath + '/' + filename(htmlFilename) + '.md'; const mdPath = basePath + '/' + filename(htmlFilename) + '.md';
// if (htmlFilename !== 'list5.html') continue; // if (htmlFilename !== 'multiline_inner_text.html') continue;
const html = await shim.fsDriver().readFile(htmlPath); const html = await shim.fsDriver().readFile(htmlPath);
let expectedMd = await shim.fsDriver().readFile(mdPath); let expectedMd = await shim.fsDriver().readFile(mdPath);
let actualMd = await enexXmlToMd('<div>' + html + '</div>', []); let actualMd = await enexXmlToMd('<div>' + html + '</div>', []);
if (os.EOL === '\r\n') { if (os.EOL === '\r\n') {
expectedMd = expectedMd.replace(/\r\n/g, '\n') expectedMd = expectedMd.replace(/\r\n/g, '\n');
actualMd = actualMd.replace(/\r\n/g, '\n') actualMd = actualMd.replace(/\r\n/g, '\n');
} }
if (actualMd !== expectedMd) { if (actualMd !== expectedMd) {
@@ -60,9 +62,9 @@ describe('EnexToMd', function() {
expect(false).toBe(true); expect(false).toBe(true);
// return; // return;
} else { } else {
expect(true).toBe(true) expect(true).toBe(true);
} }
} }
})); }));
}); });

Some files were not shown because too many files have changed in this diff Show More