1
0
mirror of https://github.com/laurent22/joplin.git synced 2026-01-29 07:46:13 +02:00

Compare commits

...

109 Commits

Author SHA1 Message Date
Laurent Cozic
c5808b60a6 update 2026-01-26 14:49:40 +00:00
Laurent Cozic
e548b3ee74 Merge branch 'dev' into lazy_load 2026-01-26 14:48:04 +00:00
Laurent Cozic
8e2b6ca296 Chore: Improved performance log consistency, and log to console on Android production too 2026-01-26 14:47:19 +00:00
Laurent Cozic
0172bb0ad8 Chore: Fix error in release-android script when the main apk is not built 2026-01-26 14:46:33 +00:00
Laurent Cozic
bd0bef121c Merge branch 'dev' into lazy_load 2026-01-26 14:35:05 +00:00
Laurent Cozic
6569dff1ac Chore: Improved performance log consistency, and log to console on Android production too 2026-01-26 14:34:31 +00:00
Laurent Cozic
5226a2e630 Chore: Fix error in release-android script when the main apk is not built 2026-01-26 14:29:25 +00:00
Laurent Cozic
1d38e443ba Chore: Do not create GitHub release when there is no APK to publish 2026-01-26 13:58:57 +00:00
Laurent Cozic
09ccc2f25d update 2026-01-26 13:50:10 +00:00
Laurent Cozic
5ad19b7261 Chore: Make Android app profileable 2026-01-26 13:46:27 +00:00
Arda Kılıçdağı
70293478a2 All: Translation: Update tr_TR.po (#14193) 2026-01-25 18:14:39 -05:00
custiq
3aaa20254f All: Translation: Update fi_FI.po (#14189) 2026-01-24 23:46:32 -05:00
renovate[bot]
42c248f7ca Update dependency @types/serviceworker to v0.0.160 (#14190)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-24 09:11:54 +00:00
Joplin Bot
ac1e94a8df Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-23 06:47:06 +00:00
renovate[bot]
daff4496cf Update dependency turndown to v7.2.2 (#14181)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-23 02:15:02 +00:00
Joplin Bot
1e00078228 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-23 01:56:25 +00:00
renovate[bot]
03a1de9370 Update dependency @rollup/plugin-commonjs to v28.0.9 (#14175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-22 17:46:44 +00:00
renovate[bot]
55ef256c65 Update dependency rate-limiter-flexible to v7.4.0 (#14174)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-22 17:46:38 +00:00
renovate[bot]
6d115db16f Update dependency @types/yargs to v17.0.34 (#14173)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-22 16:25:50 +00:00
renovate[bot]
5853031fde Update dependency @types/serviceworker to v0.0.159 (#14172)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-22 09:05:01 +00:00
renovate[bot]
47db2ae962 Update dependency @types/nodemailer to v6.4.21 (#14171)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-22 09:02:54 +00:00
Laurent Cozic
b960a2a8b0 Doc: Updated JSB contact link 2026-01-21 09:27:55 +00:00
renovate[bot]
fcaa7d2a98 Update dependency lint-staged to v16.2.6 (#14165)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-20 18:18:59 +00:00
renovate[bot]
99284ae135 Update dependency lint-staged to v16.2.0 (#14162)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-20 13:20:03 +00:00
Joplin Bot
66ae58c81b Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-19 18:43:09 +00:00
Laurent Cozic
484d6a866d Doc: Remove "(Pre-release)" marker from Android changelog since all versions are pre-releases 2026-01-19 18:03:05 +00:00
Laurent Cozic
b45fd09e38 Merge branch 'release-3.5' into dev 2026-01-19 16:44:41 +00:00
Laurent Cozic
903a369c13 Android 3.5.9 2026-01-19 16:43:41 +00:00
Laurent Cozic
1fb79315e4 Chore: lock files 2026-01-19 16:13:04 +00:00
Henry Heino
4dc021b523 Android: Remove unnecessary READ_PHONE_STATE permission (#14157) 2026-01-19 16:04:56 +00:00
Joplin Bot
bbb4b46dd9 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-19 02:01:31 +00:00
renovate[bot]
063dc46f50 Update dependency dotenv to v17.2.3 (#14155)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-19 00:02:36 +00:00
renovate[bot]
aa400b52be Update dependency short-uuid to v5 (#14156)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-19 00:02:26 +00:00
renovate[bot]
be7de2f08a Update dependency dotenv to v17.2.2 (#14145)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-18 22:01:23 +00:00
renovate[bot]
f8a129e4dc Update dependency npm-package-json-lint to v9 (#14146)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-18 22:01:11 +00:00
Laurent Cozic
c5d9646908 Desktop release v3.6.2 2026-01-18 11:33:16 +00:00
Henry Heino
876ec80911 Desktop: Fixes #14084: .onepkg import: Fix Unicode issues, support Linux and MacOS (#14094)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:31:48 +00:00
mrjo118
4051f88ce7 Chore: Fix intermittent Synchronizer.revisions test failure (#14096)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:31:42 +00:00
Laurent Cozic
f194c111e4 All: Fixes #14144: Application crashes when profile database has been analyzed 2026-01-18 11:30:05 +00:00
Henry Heino
e386246bc9 Chore: Sync fuzzer: Improve error logging (#14108)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:29:32 +00:00
Henry Heino
292b269f1d Desktop: Resolves #14086: Accessibility: Include accessibility information in exported PDFs (#14111)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:29:25 +00:00
renovate[bot]
b2fc43da2b Update dependency short-uuid to v4.2.2 (#14114)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:29:17 +00:00
Henry Heino
4a23a1ed3e Desktop: Fixes #14092: Built-in plugins: Upgrade Freehand Drawing to v4.3.0 (#14123)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:29:07 +00:00
Henry Heino
c8878a18bf Desktop, Mobile: Editor: Inline rendering: Render inline HTML (colorized text, superscript, subscript, strikethrough) (#14133) 2026-01-18 11:28:15 +00:00
Henry Heino
340fba7af5 Server: Fixes #14107: Fix warning when unsharing folder (#14134) 2026-01-18 11:25:52 +00:00
Henry Heino
271c4f4a2a Server: Fixes #14131: Allow changing the password for the admin account when SAML is enabled (#14135) 2026-01-18 11:25:38 +00:00
Henry Heino
c9dba20f59 Chore: Sync fuzzer: Allow specifying a set of initial actions (#14136)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-18 11:25:07 +00:00
renovate[bot]
b474cc206a Update dependency dotenv to v17 (#14138)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-18 11:24:46 +00:00
Milo Ivir
9d4df8cc6e All: Translation: Update hr_HR.po (#14140) 2026-01-17 20:57:39 -05:00
Joplin Bot
a4ddfe1f58 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-17 18:38:35 +00:00
renovate[bot]
7d15215e66 Update dependency react-native-device-info to v14.1.1 (#14132)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-17 14:23:02 +00:00
Laurent Cozic
449555c8e9 Desktop release v3.5.12 2026-01-17 11:21:02 +00:00
Laurent Cozic
5b74e206ed Desktop release v3.6.1 2026-01-17 11:19:55 +00:00
Laurent Cozic
9873d02b0b Chore: Setup new release 3.6 2026-01-17 11:19:43 +00:00
Laurent Cozic
57b7d98d8a Merge branch 'release-3.5' into dev 2026-01-17 11:18:39 +00:00
Laurent Cozic
f075b561a2 All: Add more error information when the profile is corrupted 2026-01-17 11:17:43 +00:00
renovate[bot]
483d051de0 Update dependency rate-limiter-flexible to v7.3.2 (#14130)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-16 15:59:43 +00:00
renovate[bot]
106cd2778f Update dependency rate-limiter-flexible to v7.3.1 (#14128)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-16 13:57:49 +00:00
Eric Duarte
c3aea2db80 All: Translation: Update ca.po (#14129) 2026-01-16 08:10:45 -05:00
Liffindra Angga Zaaldian
3f067b0f77 All: Translation: Update id_ID.po (#14127)
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-16 08:08:49 -05:00
Laurent Cozic
15cf025bc2 All: Resolves #14106: Improve Fountain notes exported as PDF (#14120) 2026-01-16 11:30:54 +00:00
Henry Heino
4677586e3b Desktop: Rich Text Editor: Fix cut, copy, paste, and select all menu items (#14125) 2026-01-16 11:30:39 +00:00
Laurent Cozic
b8c5b7a153 Doc: Added Contribution Scope Policy 2026-01-16 10:19:32 +00:00
renovate[bot]
e46e634c2e Update dependency style-to-js to v1.1.18 (#14118)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-16 09:44:18 +00:00
Henry Heino
b3cf4e5a35 Chore: Fix CI (#14124) 2026-01-16 09:43:30 +00:00
Laurent Cozic
8589e10d6e Chore: Trying to fix CI 2026-01-15 14:23:00 +00:00
renovate[bot]
18942f0d6a Update dependency babel-plugin-react-native-web to v0.21.2 (#14104)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-15 13:25:14 +00:00
Eric Duarte
3be354cdcb All: Translation: Update es_ES.po (#14117) 2026-01-15 08:22:26 -05:00
renovate[bot]
0575f1aa3e Update dependency react-native-web to v0.21.2 (#14113)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-15 05:12:54 +00:00
renovate[bot]
caa9baa460 Update dependency react-native-localize to v3.5.4 (#14112)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-15 02:04:45 +00:00
renovate[bot]
b5284804d8 Update dependency qrcode to v1.5.4 (#14109)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-15 00:07:22 +00:00
renovate[bot]
6053b4296c Update dependency esbuild to v0.25.11 (#14101)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-14 13:56:24 +00:00
renovate[bot]
615fec1d2c Update dependency @rollup/plugin-node-resolve to v16.0.3 (#14100)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-14 13:54:35 +00:00
Laurent Cozic
0bbcd9a59b All: Add support for external embeds, eg. YouTube videos (#14012) 2026-01-14 13:52:17 +00:00
renovate[bot]
6931b32f17 Update dependency @rollup/plugin-commonjs to v28.0.8 (#14099)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-14 12:09:18 +00:00
renovate[bot]
17ac501ddb Update dependency @types/serviceworker to v0.0.158 (#14060)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-14 09:32:41 +00:00
renovate[bot]
94161c5f93 Update dependency @types/react to v18.3.26 (#14050)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Laurent Cozic <laurent22@users.noreply.github.com>
2026-01-14 09:32:34 +00:00
Jozef Gaal
196255e960 All: Translation: Update sk_SK.po (#14095) 2026-01-13 19:55:13 -05:00
Self Not Found
f936390ee4 All: Translation: Update zh_CN.po (#14091) 2026-01-13 16:48:20 -05:00
Laurent Cozic
5638c4b812 Chore: Fixed various typo and grammar mistakes 2026-01-13 16:28:24 +00:00
Linkosred
4222caa423 Docs : Add video tutorial link for several pages of the documentation (#14068) 2026-01-13 16:20:52 +00:00
Henry Heino
bc705acc5c Windows: Fixes #13430: Experimental auto-updater: Fix application crash on update failure (#14083) 2026-01-13 16:19:51 +00:00
Laurent Cozic
f1c968c19a Chore: Remove usage of watchman when running Jest tests (#14087) 2026-01-13 15:40:53 +00:00
Laurent Cozic
26c5a6181e Chore: Retry Apple Silicon test build when it fails (#14088) 2026-01-13 15:40:36 +00:00
Laurent Cozic
a3bf0cfdeb Server: Add support for MFA (#14081) 2026-01-13 14:14:46 +00:00
Joplin Bot
606b397326 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-13 01:53:11 +00:00
krevad
fbd157283d All: Translation: Update sv.po (#14082) 2026-01-12 19:38:43 -05:00
Laurent Cozic
2e879f65fc Chore: Fixed Markdown filename 2026-01-12 19:32:54 +00:00
Joplin Bot
c727156a46 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-12 18:43:05 +00:00
Laurent Cozic
4e31f1918d Doc: Added instructions on how to create a custom profile for deployments 2026-01-12 16:18:17 +00:00
Laurent Cozic
a1cdf67779 Chore: Also release pkg files for macOS 2026-01-12 16:08:56 +00:00
Laurent Cozic
5cb1db197f Doc: Add release notes 3.5 2026-01-12 15:12:18 +00:00
Joplin Bot
05c3065c72 Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-10 12:49:51 +00:00
Laurent Cozic
25a5be09bf Merge branch 'release-3.5' into dev 2026-01-10 10:16:56 +00:00
Laurent Cozic
f0a3f73ddb iOS 13.5.3 2026-01-10 10:09:40 +00:00
Laurent Cozic
1bb5d9ade5 Android 3.5.8 2026-01-10 10:09:18 +00:00
Laurent Cozic
e75875c1b0 Desktop release v3.5.11 2026-01-10 10:01:41 +00:00
mrjo118
cce4b76e3f Mobile: Fixes #13544: Fixed keyboard input issue in note title (#14070) 2026-01-10 09:53:21 +00:00
Henry Heino
b310bfd0c2 iOS: Fixes #14063: Fix icon rendering (#14071) 2026-01-10 09:44:23 +00:00
Henry Heino
e19e1ac040 Desktop: OneNote importer: Simplify error report (#14074) 2026-01-10 09:44:09 +00:00
ERYpTION
3bba2f6b2a All: Translation: Update da_DK.po (#14073) 2026-01-09 17:22:08 -05:00
summoner
ca9addcda0 ALL: Translation: Update hu-HU.po (#14069) 2026-01-09 16:16:33 -05:00
Nick
c42a49c1cf All: Translation: Update sv.po (#14064) 2026-01-09 15:58:20 -05:00
Laurent Cozic
a1e056670d Chore: Ignore .watchman-cookie- files 2026-01-09 17:45:27 +00:00
Laurent Cozic
6d7a70c21a Chore: Update translations 2026-01-09 10:06:42 +00:00
Henry Heino
14fd3c66c1 Chore: Fix CI (#14061) 2026-01-09 09:26:17 +00:00
Joplin Bot
376f44a0ce Doc: Auto-update documentation
Auto-updated using release-website.sh
2026-01-09 01:56:03 +00:00
Laurent Cozic
4d81ee4c7f Chore: Exclude katex and mermaid from Renovate 2026-01-08 19:44:50 +00:00
Laurent Cozic
d9011800b2 iOS 13.5.2 2026-01-08 19:43:11 +00:00
337 changed files with 44558 additions and 30699 deletions

View File

@@ -1061,6 +1061,8 @@ packages/editor/CodeMirror/extensions/rendering/replaceBulletLists.js
packages/editor/CodeMirror/extensions/rendering/replaceCheckboxes.js
packages/editor/CodeMirror/extensions/rendering/replaceDividers.js
packages/editor/CodeMirror/extensions/rendering/replaceFormatCharacters.js
packages/editor/CodeMirror/extensions/rendering/replaceInlineHtml.test.js
packages/editor/CodeMirror/extensions/rendering/replaceInlineHtml.js
packages/editor/CodeMirror/extensions/rendering/types.js
packages/editor/CodeMirror/extensions/rendering/utils/makeBlockReplaceExtension.js
packages/editor/CodeMirror/extensions/rendering/utils/makeInlineReplaceExtension.js
@@ -1101,6 +1103,7 @@ packages/editor/CodeMirror/utils/getSearchState.js
packages/editor/CodeMirror/utils/growSelectionToNode.js
packages/editor/CodeMirror/utils/handleLinkEditRequests.js
packages/editor/CodeMirror/utils/handlePasteEvent.js
packages/editor/CodeMirror/utils/htmlNodeInfo.js
packages/editor/CodeMirror/utils/isCursorAtBeginning.js
packages/editor/CodeMirror/utils/isInSyntaxNode.js
packages/editor/CodeMirror/utils/markdown/codeBlockLanguages/allLanguages.js
@@ -1805,6 +1808,7 @@ packages/renderer/MdToHtml/renderMedia.js
packages/renderer/MdToHtml/rules/abc.js
packages/renderer/MdToHtml/rules/checkbox.js
packages/renderer/MdToHtml/rules/code_inline.js
packages/renderer/MdToHtml/rules/externalEmbed.js
packages/renderer/MdToHtml/rules/fence.js
packages/renderer/MdToHtml/rules/fountain.js
packages/renderer/MdToHtml/rules/highlight_keywords.js
@@ -1840,17 +1844,19 @@ packages/tools/checkIgnoredFiles.js
packages/tools/checkLibPaths.test.js
packages/tools/checkLibPaths.js
packages/tools/convertThemesToCss.js
packages/tools/fuzzer/ActionRunner.js
packages/tools/fuzzer/ActionTracker.js
packages/tools/fuzzer/Client.js
packages/tools/fuzzer/ClientPool.js
packages/tools/fuzzer/Server.js
packages/tools/fuzzer/constants.js
packages/tools/fuzzer/doRandomAction.js
packages/tools/fuzzer/model/FolderRecord.js
packages/tools/fuzzer/sync-fuzzer.js
packages/tools/fuzzer/types.js
packages/tools/fuzzer/utils/ProgressBar.js
packages/tools/fuzzer/utils/SeededRandom.js
packages/tools/fuzzer/utils/diffSortedStringArrays.test.js
packages/tools/fuzzer/utils/diffSortedStringArrays.js
packages/tools/fuzzer/utils/getNumberProperty.js
packages/tools/fuzzer/utils/getProperty.js
packages/tools/fuzzer/utils/getStringProperty.js

View File

@@ -48,6 +48,7 @@ jobs:
CSC_LINK: ${{ secrets.APPLE_CSC_LINK }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
GITHUB_EVENT_NAME: ${{ github.event_name }}
IS_CONTINUOUS_INTEGRATION: 1
BUILD_SEQUENCIAL: 1
PUBLISH_ENABLED: ${{ env.PUBLISH_ENABLED }}
@@ -57,25 +58,38 @@ jobs:
yarn install
cd packages/app-desktop
npm pkg set 'build.mac.artifactName'='${productName}-${version}-${arch}.${ext}'
npm pkg delete 'build.mac.target'
npm pkg set 'build.mac.target[0].target'='dmg'
npm pkg set 'build.mac.target[0].arch[0]'='arm64'
npm pkg set 'build.mac.target[1].target'='zip'
npm pkg set 'build.mac.target[1].arch[0]'='arm64'
if [[ "$PUBLISH_ENABLED" == "true" ]]; then
echo "Building and publishing desktop application..."
PYTHON_PATH=$(which python) USE_HARD_LINKS=false yarn dist --mac --arm64
# Only enable pkg build in the main repository CI. As of 01/15/2026, pkg
# build fails when running on external pull requests.
if [[ "$GITHUB_EVENT_NAME" != "pull_request" ]]; then
npm pkg set 'build.mac.target[2].target'='pkg'
npm pkg set 'build.mac.target[2].arch[0]'='arm64'
fi
yarn modifyReleaseAssets --repo="$GH_REPO" --tag="$GIT_TAG_NAME" --token="$GITHUB_TOKEN"
else
echo "Building but *not* publishing desktop application..."
build_dist() {
if [[ "$PUBLISH_ENABLED" == "true" ]]; then
echo "Building and publishing desktop application..."
PYTHON_PATH=$(which python) USE_HARD_LINKS=false yarn dist --mac --arm64
# We also want to disable signing the app in this case, because
# it doesn't work and we don't need it.
# https://www.electron.build/code-signing#how-to-disable-code-signing-during-the-build-process-on-macos
yarn modifyReleaseAssets --repo="$GH_REPO" --tag="$GIT_TAG_NAME" --token="$GITHUB_TOKEN"
else
echo "Building but *not* publishing desktop application..."
export CSC_IDENTITY_AUTO_DISCOVERY=false
npm pkg set 'build.mac.identity'=null --json
# We also want to disable signing the app in this case, because
# it doesn't work and we don't need it.
# https://www.electron.build/code-signing#how-to-disable-code-signing-during-the-build-process-on-macos
PYTHON_PATH=$(which python) USE_HARD_LINKS=false yarn dist --mac --arm64 --publish=never
fi
export CSC_IDENTITY_AUTO_DISCOVERY=false
npm pkg set 'build.mac.identity'=null --json
PYTHON_PATH=$(which python) USE_HARD_LINKS=false yarn dist --mac --arm64 --publish=never
fi
}
build_dist || build_dist

9
.gitignore vendored
View File

@@ -53,6 +53,7 @@ lerna-debug.log
docs/**/*.mustache
.idea
/readme/i18n
.watchman-cookie-*
# Yarn stuff
# https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored
@@ -1034,6 +1035,8 @@ packages/editor/CodeMirror/extensions/rendering/replaceBulletLists.js
packages/editor/CodeMirror/extensions/rendering/replaceCheckboxes.js
packages/editor/CodeMirror/extensions/rendering/replaceDividers.js
packages/editor/CodeMirror/extensions/rendering/replaceFormatCharacters.js
packages/editor/CodeMirror/extensions/rendering/replaceInlineHtml.test.js
packages/editor/CodeMirror/extensions/rendering/replaceInlineHtml.js
packages/editor/CodeMirror/extensions/rendering/types.js
packages/editor/CodeMirror/extensions/rendering/utils/makeBlockReplaceExtension.js
packages/editor/CodeMirror/extensions/rendering/utils/makeInlineReplaceExtension.js
@@ -1074,6 +1077,7 @@ packages/editor/CodeMirror/utils/getSearchState.js
packages/editor/CodeMirror/utils/growSelectionToNode.js
packages/editor/CodeMirror/utils/handleLinkEditRequests.js
packages/editor/CodeMirror/utils/handlePasteEvent.js
packages/editor/CodeMirror/utils/htmlNodeInfo.js
packages/editor/CodeMirror/utils/isCursorAtBeginning.js
packages/editor/CodeMirror/utils/isInSyntaxNode.js
packages/editor/CodeMirror/utils/markdown/codeBlockLanguages/allLanguages.js
@@ -1778,6 +1782,7 @@ packages/renderer/MdToHtml/renderMedia.js
packages/renderer/MdToHtml/rules/abc.js
packages/renderer/MdToHtml/rules/checkbox.js
packages/renderer/MdToHtml/rules/code_inline.js
packages/renderer/MdToHtml/rules/externalEmbed.js
packages/renderer/MdToHtml/rules/fence.js
packages/renderer/MdToHtml/rules/fountain.js
packages/renderer/MdToHtml/rules/highlight_keywords.js
@@ -1813,17 +1818,19 @@ packages/tools/checkIgnoredFiles.js
packages/tools/checkLibPaths.test.js
packages/tools/checkLibPaths.js
packages/tools/convertThemesToCss.js
packages/tools/fuzzer/ActionRunner.js
packages/tools/fuzzer/ActionTracker.js
packages/tools/fuzzer/Client.js
packages/tools/fuzzer/ClientPool.js
packages/tools/fuzzer/Server.js
packages/tools/fuzzer/constants.js
packages/tools/fuzzer/doRandomAction.js
packages/tools/fuzzer/model/FolderRecord.js
packages/tools/fuzzer/sync-fuzzer.js
packages/tools/fuzzer/types.js
packages/tools/fuzzer/utils/ProgressBar.js
packages/tools/fuzzer/utils/SeededRandom.js
packages/tools/fuzzer/utils/diffSortedStringArrays.test.js
packages/tools/fuzzer/utils/diffSortedStringArrays.js
packages/tools/fuzzer/utils/getNumberProperty.js
packages/tools/fuzzer/utils/getProperty.js
packages/tools/fuzzer/utils/getStringProperty.js

View File

@@ -0,0 +1,21 @@
# Add a minSdkVersion to prevent the dangerous READ_PHONE_STATE
# permission from being added.
# See:
# - Upstream issue report: https://github.com/oblador/react-native-vector-icons/issues/1861
# - About the permission: https://developer.android.com/reference/android/Manifest.permission#READ_PHONE_STATE
# - StackOverflow post with discussion and alternate workarounds: https://stackoverflow.com/questions/39668549/why-has-the-read-phone-state-permission-been-added
diff --git a/android/build.gradle b/android/build.gradle
index a16b4ad6d1871cf5cf73ef7ebeaf8bd4d662b134..9871afb5fbf8e687370e08f54d884ecd7dde7e7c 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -37,6 +37,10 @@ android {
}
compileSdkVersion safeExtGet('compileSdkVersion', 31)
+
+ defaultConfig {
+ minSdkVersion safeExtGet('minSdkVersion', 24)
+ }
}
dependencies {

View File

@@ -0,0 +1,21 @@
# Add a minSdkVersion to prevent the dangerous READ_PHONE_STATE
# permission from being added.
# See:
# - Upstream issue report: https://github.com/oblador/react-native-vector-icons/issues/1861
# - About the permission: https://developer.android.com/reference/android/Manifest.permission#READ_PHONE_STATE
# - StackOverflow post with discussion and alternate workarounds: https://stackoverflow.com/questions/39668549/why-has-the-read-phone-state-permission-been-added
diff --git a/android/build.gradle b/android/build.gradle
index d42bd23123644cc324051e9c7ec4635de286315a..640996df60fe7769f69b30b35f771eb9cf0b75d4 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -37,6 +37,10 @@ android {
}
compileSdkVersion safeExtGet('compileSdkVersion', 31)
+
+ defaultConfig {
+ minSdkVersion safeExtGet('minSdkVersion', 24)
+ }
}
dependencies {

View File

@@ -0,0 +1,21 @@
# Add a minSdkVersion to prevent the dangerous READ_PHONE_STATE
# permission from being added.
# See:
# - Upstream issue report: https://github.com/oblador/react-native-vector-icons/issues/1861
# - About the permission: https://developer.android.com/reference/android/Manifest.permission#READ_PHONE_STATE
# - StackOverflow post with discussion and alternate workarounds: https://stackoverflow.com/questions/39668549/why-has-the-read-phone-state-permission-been-added
diff --git a/android/build.gradle b/android/build.gradle
index 170ec0ff9befe0f9155aaf5e1b84133cfd87be99..e6a0ab4a019ee67c5af7761ae8bb35f18b05c590 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -37,6 +37,10 @@ android {
}
compileSdkVersion safeExtGet('compileSdkVersion', 31)
+
+ defaultConfig {
+ minSdkVersion safeExtGet('minSdkVersion', 24)
+ }
}
dependencies {

View File

@@ -0,0 +1,21 @@
# Add a minSdkVersion to prevent the dangerous READ_PHONE_STATE
# permission from being added.
# See:
# - Upstream issue report: https://github.com/oblador/react-native-vector-icons/issues/1861
# - About the permission: https://developer.android.com/reference/android/Manifest.permission#READ_PHONE_STATE
# - StackOverflow post with discussion and alternate workarounds: https://stackoverflow.com/questions/39668549/why-has-the-read-phone-state-permission-been-added
diff --git a/android/build.gradle b/android/build.gradle
index 3b22f9de66795ee01dbaa29655727ee7ddba3cc8..325daa88d33f066b3826e5031ce281793710af2d 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -37,6 +37,10 @@ android {
}
compileSdkVersion safeExtGet('compileSdkVersion', 31)
+
+ defaultConfig {
+ minSdkVersion safeExtGet('minSdkVersion', 24)
+ }
}
dependencies {

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

View File

@@ -1,4 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Joplin]]></title><description><![CDATA[Joplin, the open source note-taking application]]></description><link>https://joplinapp.org</link><generator>RSS for Node</generator><lastBuildDate>Mon, 22 Sep 2025 00:00:00 GMT</lastBuildDate><atom:link href="https://joplinapp.org/rss.xml" rel="self" type="application/rss+xml"/><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate><item><title><![CDATA[What's new in Joplin 3.4]]></title><description><![CDATA[<p>Joplin 3.4 includes many bug fixes and improvements, with a focus on the mobile app.</p>
<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Joplin]]></title><description><![CDATA[Joplin, the open source note-taking application]]></description><link>https://joplinapp.org</link><generator>RSS for Node</generator><lastBuildDate>Sun, 11 Jan 2026 00:00:00 GMT</lastBuildDate><atom:link href="https://joplinapp.org/rss.xml" rel="self" type="application/rss+xml"/><pubDate>Sun, 11 Jan 2026 00:00:00 GMT</pubDate><item><title><![CDATA[What's new in Joplin 3.5]]></title><description><![CDATA[<h2>Improvements across desktop and mobile<a name="improvements-across-desktop-and-mobile" href="#improvements-across-desktop-and-mobile" class="heading-anchor">🔗</a></h2>
<h3>More stable and consistent Markdown editing<a name="more-stable-and-consistent-markdown-editing" href="#more-stable-and-consistent-markdown-editing" class="heading-anchor">🔗</a></h3>
<p>The Markdown editor has been refined to feel more stable and closer to the final rendered view. Headings in the editor now more closely match how they appear when viewing a note, reducing the visual jump between editing and reading. Layout issues have also been addressed so elements like rendered checkboxes and images no longer cause the editor to shift unexpectedly while typing.</p>
<p>The ABC music notation plugin appeared to be popular but had some limitations. With this new version, ABC is now part of the app, which means it can now work from published notes, and from the Rich Text editor!</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-abc.png" alt="ABC music notation rendered directly in Joplin, showing a short musical phrase displayed from plain-text ABC syntax"></p>
<h3>Smoother switching between notes<a name="smoother-switching-between-notes" href="#smoother-switching-between-notes" class="heading-anchor">🔗</a></h3>
<p>Switching between notes is now less disruptive. Joplin restores cursor position and scroll location more reliably, making it easier to move back and forth between notes—especially when working with longer documents or comparing content—without losing your place.</p>
<h3>Case insensitive tags<a name="case-insensitive-tags" href="#case-insensitive-tags" class="heading-anchor">🔗</a></h3>
<p>Tags are now treated in a case-insensitive way, which helps prevent duplicate tags caused by differences in capitalisation, while still allowing mixed-case tag names. All this time we were hoping that @dpoulton <a href="https://discourse.joplinapp.org/t/tags-lower-case-only/4220/106">would just get used to lowercase tags</a>, but 5 years later it looks like it's not happening ;) So thank you @mrjo118 for implementing it!</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-lowercase-tags.png" alt="Joplin tag list demonstrating case-insensitive tags, with mixed-case tag names merged into a single tag."></p>
<h3>More reliable syncing and sharing<a name="more-reliable-syncing-and-sharing" href="#more-reliable-syncing-and-sharing" class="heading-anchor">🔗</a></h3>
<p>Syncing and sharing have been made more robust in everyday use. Joplin now handles repeated syncs more efficiently, avoids unnecessary data usage, and is better at detecting and syncing all changes, particularly when using WebDAV and S3 sync targets.</p>
<p>Moreover filesystem synchronisation is now more reliable, in particular when used alongside tools like SyncThing on both mobile and desktop.</p>
<h3>Accessibility and readability improvements<a name="accessibility-and-readability-improvements" href="#accessibility-and-readability-improvements" class="heading-anchor">🔗</a></h3>
<p>Accessibility has seen further refinements in this release. Dark mode readability has been improved, common editor elements are clearer, and animations are reduced or disabled when system “reduce motion” settings are enabled, making the app more comfortable to use for a wider range of users. Keyboard navigation has also been improved on the desktop application.</p>
<h2>Desktop-specific improvements<a name="desktop-specific-improvements" href="#desktop-specific-improvements" class="heading-anchor">🔗</a></h2>
<h3>Easier profile management<a name="easier-profile-management" href="#easier-profile-management" class="heading-anchor">🔗</a></h3>
<p>Managing multiple profiles on desktop is now simpler thanks to a new, more user-friendly profile management interface. This removes the need to manually edit configuration files and makes switching between different setups easier and safer.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-profiles.png" alt="Desktop profile management screen in Joplin showing multiple profiles with options to rename or delete them."></p>
<h3>Significantly improved OneNote import<a name="significantly-improved-onenote-import" href="#significantly-improved-onenote-import" class="heading-anchor">🔗</a></h3>
<p>Importing content from OneNote is now more reliable and accurate. Support has been expanded to cover more OneNote file formats, and many edge cases have been addressed so imported notes more closely match their original structure and content. This makes migrating from OneNote to Joplin smoother and more trustworthy.</p>
<h3>Better tools for organising large note collections<a name="better-tools-for-organising-large-note-collections" href="#better-tools-for-organising-large-note-collections" class="heading-anchor">🔗</a></h3>
<p>Desktop users can now select multiple notebooks at once, making it easier to reorganise notebook structures, move groups of notes, or clean up larger collections without working notebook by notebook.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-multi-select.png" alt="Joplin desktop sidebar with several notebooks selected at the same time for bulk organisation."></p>
<h3>Polished editing experience on desktop<a name="polished-editing-experience-on-desktop" href="#polished-editing-experience-on-desktop" class="heading-anchor">🔗</a></h3>
<p>Both the Markdown and Rich Text editors have been further refined. Cursor behaviour is more predictable, visual consistency between editing and viewing has improved, and several layout and rendering issues have been fixed to reduce interruptions while writing.</p>
<h3>More reliable search and navigation<a name="more-reliable-search-and-navigation" href="#more-reliable-search-and-navigation" class="heading-anchor">🔗</a></h3>
<p>Search and navigation on desktop have been improved with fixes that ensure search results behave consistently and remain visible when moving between windows or views.</p>
<h3>Improved math support in WebClipper<a name="improved-math-support-in-webclipper" href="#improved-math-support-in-webclipper" class="heading-anchor">🔗</a></h3>
<p>The WebClipper is not forgotten in this release - clipping certain math formulas, in particular from Wikipedia but also other websites, has been improved. Additionally, certain scientific articles are now also better handled by the WebClipper.</p>
<h2>Mobile-specific improvements<a name="mobile-specific-improvements" href="#mobile-specific-improvements" class="heading-anchor">🔗</a></h2>
<h3>A more powerful Rich Text Editor on mobile<a name="a-more-powerful-rich-text-editor-on-mobile" href="#a-more-powerful-rich-text-editor-on-mobile" class="heading-anchor">🔗</a></h3>
<p>The mobile Rich Text Editor continues to improve, with new and expanded support for tables, code blocks, and other structured content. These changes make it easier to create and edit more complex notes directly on mobile devices.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-rte1.png" alt="Joplin mobile Rich Text Editor showing table editing controls and an embedded code block inside a note."></p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-rte2.png" alt="Mobile code block editor in Joplin with a Python code snippet displayed in an editable dialog."></p>
<h3>Easier tag management on mobile<a name="easier-tag-management-on-mobile" href="#easier-tag-management-on-mobile" class="heading-anchor">🔗</a></h3>
<p>Managing tags on mobile is now more practical. You can rename and delete tags directly from the app, and searching through tags is easier, helping keep large tag lists organised over time.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20260111-mobile-tags.png" alt="Joplin mobile tag management screen showing a tag options menu with rename and delete actions."></p>
<h3>Improved stability and usability on mobile devices<a name="improved-stability-and-usability-on-mobile-devices" href="#improved-stability-and-usability-on-mobile-devices" class="heading-anchor">🔗</a></h3>
<p>Several fixes improve overall stability and usability on mobile, particularly on smaller screens. Issues causing UI elements to appear off-screen have been addressed, and the app behaves more consistently in situations that previously caused hangs or visual glitches.</p>
<h2>Bug fixes and security fixes across platforms<a name="bug-fixes-and-security-fixes-across-platforms" href="#bug-fixes-and-security-fixes-across-platforms" class="heading-anchor">🔗</a></h2>
<h3>A large number of stability, correctness and security fixes<a name="a-large-number-of-stability-correctness-and-security-fixes" href="#a-large-number-of-stability-correctness-and-security-fixes" class="heading-anchor">🔗</a></h3>
<p>Joplin 3.5 includes about 114 bug fixes across desktop and mobile, addressing issues in editing, syncing, importing, rendering, and general stability. Many fixes target edge cases that could lead to crashes, inconsistent behaviour, or rare data loss scenarios. Moreover, this version includes several vulnerability fixes to make the applications more secure.</p>
]]></description><link>https://joplinapp.org/news/20260111-release-3-5</link><guid isPermaLink="false">20260111-release-3-5</guid><pubDate>Sun, 11 Jan 2026 00:00:00 GMT</pubDate><twitter-text></twitter-text></item><item><title><![CDATA[What's new in Joplin 3.4]]></title><description><![CDATA[<p>Joplin 3.4 includes many bug fixes and improvements, with a focus on the mobile app.</p>
<h2>Mobile<a name="mobile" href="#mobile" class="heading-anchor">🔗</a></h2>
<h3>Rich Text Editor<a name="rich-text-editor" href="#rich-text-editor" class="heading-anchor">🔗</a></h3>
<p>The mobile app now includes a beta <a href="https://joplinapp.org/help/apps/rich_text_editor">Rich Text Editor</a>! The new editor renders formatting/math/images within the editor:</p>
@@ -481,42 +524,4 @@ sys 0m38.013s</p>
<p>This is a bit of an extra constraint but it is hard to avoid. Contributor License Agreements are very common for GPL or AGPL projects. For example Apache, Canonical or Python all require their contributors to sign a CLA.</p>
<h2>Questions?<a name="questions" href="#questions" class="heading-anchor">🔗</a></h2>
<p>If you have any questions please let us know. Overall we believe this is a positive improvements for Joplin as it means any work derives from it will also benefit the project.</p>
]]></description><link>https://joplinapp.org/news/20221221-agpl</link><guid isPermaLink="false">20221221-agpl</guid><pubDate>Wed, 21 Dec 2022 00:00:00 GMT</pubDate><twitter-text>Joplin is switching to the GNU Affero General Public License v3 (AGPL-3.0)</twitter-text></item><item><title><![CDATA[What's new in Joplin 2.9]]></title><description><![CDATA[<h2>Proxy support<a name="proxy-support" href="#proxy-support" class="heading-anchor">🔗</a></h2>
<p>Both the desktop and mobile application now support proxies thanks to the work of Jason Williams. This will allow you to use the apps in particular when you are behind a company proxy.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20221216-proxy-support.png" alt=""></p>
<h2>New PDF viewer<a name="new-pdf-viewer" href="#new-pdf-viewer" class="heading-anchor">🔗</a></h2>
<p>The desktop application now features a new PDF viewer thanks to the work of Asrient during GSoC.</p>
<p>The main advantage for now is that this viewer preserves the last PDF page that was read. In the next version, the viewer will also include a way to annotate PDF files.</p>
<h2>Multi-language spell checking<a name="multi-language-spell-checking" href="#multi-language-spell-checking" class="heading-anchor">🔗</a></h2>
<p>The desktop app include a multi-language spell checking features, which allows you, for example, to spell-check notes in your native language and in English.</p>
<h2>New mobile text editor<a name="new-mobile-text-editor" href="#new-mobile-text-editor" class="heading-anchor">🔗</a></h2>
<p>Writing formatted notes on mobile has always been cumbersome due to the need to enter special format characters like <code>*</code> or <code>[</code>, etc.</p>
<p>Thanks to the work of Henry Heino during GSoC, writing notes on the go is now easier thanks to an improved Markdown editor.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20221216-mobile-beta-editor.png" alt=""></p>
<p>The most visible feature is the addition of a toolbar, which helps input those special characters, like on desktop.</p>
<p>Moreover Henry made a lot of subtle but useful improvements to the editor, for example to improve the note appearance, to improve list continuation, etc. Search within a note is now also supported as well as spell-checking.</p>
<p>At a more technical level, Henry also added many test units to ensure that the editor remains robust and reliable.</p>
<p>To enable the feature, go to the configuration screen and selected &quot;Opt-in to the editor beta&quot;. It is already very stable so we will probably promote it to be the main editor from the next version.</p>
<h2>Improved alignment of notebook icons<a name="improved-alignment-of-notebook-icons" href="#improved-alignment-of-notebook-icons" class="heading-anchor">🔗</a></h2>
<p>Previously, when you would assign an icon to a notebook, it would shift the title to the right, but notebook without an icon would not. It means that notebooks with and without an icon would not be vertically aligned.</p>
<p>To tidy things up, this new version adds a default icons to notebooks without an explicitly assigned icon. This result in the notebook titles being correctly vertically aligned.</p>
<p>Note that this feature is only enabled if you use custom icons - otherwise it will simply display the notebook titles without any default icons, as before.</p>
<p><img src="https://raw.githubusercontent.com/laurent22/joplin/dev/Assets/WebsiteAssets/images/news/20221216-notebook-icons.png" alt=""></p>
<h2>Improved handling of file attachments<a name="improved-handling-of-file-attachments" href="#improved-handling-of-file-attachments" class="heading-anchor">🔗</a></h2>
<p>Self Not Found made a number of small but useful improvements to attachment handling, including increasing the maximum size to 200MB, adding support for attaching multiple files, and fixing issues with synchronising attachments via proxy.</p>
<h2>Fixed filesystem sync on mobile<a name="fixed-filesystem-sync-on-mobile" href="#fixed-filesystem-sync-on-mobile" class="heading-anchor">🔗</a></h2>
<p>This was a long and complex change due to the need to support new Android APIs but hopefully that should now be working again, thanks to the work of jd1378.</p>
<p>So you can now sync again your notes with Syncthing and other file-based synchronisation systems.</p>
<h2>And more...<a name="and-more" href="#and-more" class="heading-anchor">🔗</a></h2>
<p>In total this new desktop version includes 36 improvements, bug fixes, and security fixes.</p>
<p>As always, a lot of work went into the Android and iOS app too, which include 37 improvements, bug fixes, and security fixes.</p>
<p>See here for the changelogs:</p>
<ul>
<li><a href="https://joplinapp.org/help/about/changelog/desktop">Desktop app changelog</a></li>
<li><a href="https://joplinapp.org/help/about/changelog/android/">Android app changelog</a></li>
</ul>
<h2>About the Android version<a name="about-the-android-version" href="#about-the-android-version" class="heading-anchor">🔗</a></h2>
<p>Unfortunately we cannot publish the Android version because it is based on a framework version that Google does not accept. To upgrade the app a lot of changes are needed and another round of pre-releases, and therefore there will not be a 2.9 version for Google Play. You may however download the official APK directly from there: <a href="https://github.com/laurent22/joplin-android/releases/tag/android-v2.9.8">Android 2.9 Official Release</a></p>
<p>This is the reality of app stores in general - small developers being imposed never ending new requirements by all-powerful companies, and by the time a version is finally ready we can't even publish it because yet more requirements are in place.</p>
<p>For the record the current 2.9 app works perfectly fine. It targets Android 11, which is only 2 years old and is still supported (and installed on millions of phones). Google requires us to target Android 12 which only came out last year.</p>
]]></description><link>https://joplinapp.org/news/20221216-release-2-9</link><guid isPermaLink="false">20221216-release-2-9</guid><pubDate>Fri, 16 Dec 2022 00:00:00 GMT</pubDate><twitter-text>What&apos;s new in Joplin 2.9</twitter-text></item></channel></rss>
]]></description><link>https://joplinapp.org/news/20221221-agpl</link><guid isPermaLink="false">20221221-agpl</guid><pubDate>Wed, 21 Dec 2022 00:00:00 GMT</pubDate><twitter-text>Joplin is switching to the GNU Affero General Public License v3 (AGPL-3.0)</twitter-text></item></channel></rss>

6
jest.config.base.js Normal file
View File

@@ -0,0 +1,6 @@
// This is the base Jest configuration - all
// jest.config.js files should inherit from it.
module.exports = {
watchman: false,
};

View File

@@ -16,6 +16,7 @@
"./packages/app-cli/**/*.mo": true,
"./packages/app-cli/**/build/": true,
"./packages/app-cli/**/config.json": true,
"**/.watchman-cookie-*": true,
"./packages/app-cli/**/linkToLocal.sh": true,
"./packages/app-cli/**/node_modules/": true,
"./packages/app-cli/**/out.txt": true,

View File

@@ -86,9 +86,9 @@
"gulp": "4.0.2",
"husky": "9.1.7",
"lerna": "3.22.1",
"lint-staged": "16.1.6",
"lint-staged": "16.2.6",
"madge": "8.0.0",
"npm-package-json-lint": "8.0.0",
"npm-package-json-lint": "9.0.0",
"typescript": "5.8.3"
},
"dependencies": {

View File

@@ -21,7 +21,8 @@ class Command extends BaseCommand {
public override async action(_args: Args) {
const keymaps = await app().loadKeymaps();
this.stdout(_('Configured keyboard shortcuts:\n'));
this.stdout(_('Configured keyboard shortcuts:'));
this.stdout('\n');
const rows = [];
const padding = ' ';
@@ -31,7 +32,7 @@ class Command extends BaseCommand {
for (const item of keymaps) {
const formattedKeys = item.keys
.map((k: string) => (k === ' ' ? `(${'SPACE'})` : k))
.map((k: string) => (k === ' ' ? `(${_('SPACE')})` : k))
.join(', ');
rows.push([padding + formattedKeys, item.type, item.command]);
}

View File

@@ -24,7 +24,10 @@
// 4. Remove tests one by one to narrow it down to the one with the async
// call that's causing problem.
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
testMatch: [
'**/tests/HtmlToHtml.js',
'**/tests/HtmlToMd.js',

View File

@@ -35,15 +35,15 @@
],
"owner": "Laurent Cozic"
},
"version": "3.5.1",
"version": "3.6.0",
"bin": "./main.js",
"engines": {
"node": ">=10.0.0"
},
"dependencies": {
"@joplin/lib": "~3.5",
"@joplin/renderer": "~3.5",
"@joplin/utils": "~3.5",
"@joplin/lib": "~3.6",
"@joplin/renderer": "~3.6",
"@joplin/utils": "~3.6",
"aws-sdk": "2.1340.0",
"chalk": "4.1.2",
"compare-version": "0.1.2",
@@ -70,7 +70,7 @@
"yargs-parser": "21.1.1"
},
"devDependencies": {
"@joplin/tools": "~3.5",
"@joplin/tools": "~3.6",
"@types/fs-extra": "11.0.4",
"@types/jest": "29.5.14",
"@types/node": "18.19.130",

View File

@@ -0,0 +1,8 @@
<div class="joplin-editable">
<span class="joplin-source" data-joplin-source-open="" data-joplin-source-close="">https://www.youtube.com/watch?v=iJqe9pC-z-Y</span>
<div class="joplin-youtube-player-rendered">
<iframe src="https://www.youtube-nocookie.com/embed/iJqe9pC-z-Y" title="YouTube video player" frameborder="0" allowfullscreen></iframe>
</div>
</div>

View File

@@ -0,0 +1 @@
https://www.youtube.com/watch?v=iJqe9pC-z-Y

Binary file not shown.

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 3,
"name": "Joplin Web Clipper [DEV]",
"version": "3.5.0",
"version": "3.6.0",
"description": "Capture and save web pages and screenshots from your browser to Joplin.",
"homepage_url": "https://joplinapp.org",
"content_security_policy": {

View File

@@ -260,6 +260,15 @@ export default class ElectronAppWrapper {
require('@electron/remote/main').enable(this.win_.webContents);
// Add Referer header for YouTube embeds to fix Error 153
this.win_.webContents.session.webRequest.onBeforeSendHeaders(
{ urls: ['*://*.youtube.com/*', '*://*.youtube-nocookie.com/*'] },
(details, callback) => {
details.requestHeaders['Referer'] = 'https://joplinapp.org/';
callback({ requestHeaders: details.requestHeaders });
},
);
if (!screen.getDisplayMatching(this.win_.getBounds())) {
const { width: windowWidth, height: windowHeight } = this.win_.getBounds();
const { width: primaryDisplayWidth, height: primaryDisplayHeight } = screen.getPrimaryDisplay().workArea;

View File

@@ -95,6 +95,9 @@ export default class InteropServiceHelper {
// Allows users to override the CSS page size.
// See https://github.com/laurent22/joplin/issues/13096
preferCSSPageSize: true,
// Include accessibility information in the output:
generateTaggedPDF: true,
});
resolve(data);
} catch (error) {

View File

@@ -742,7 +742,7 @@ const TinyMCE = (props: NoteBodyEditorProps, ref: Ref<NoteBodyEditorRef>) => {
'media-src \'self\' blob: data: *', // Audio and video players
// Disallow certain unused features
'child-src \'none\'', // Should not contain sub-frames
'child-src https://*.youtube.com https://*.youtube-nocookie.com', // Allow YouTube embeds
'object-src \'none\'', // Objects can be used for script injection
'form-action \'none\'', // No submitting forms

View File

@@ -22,4 +22,8 @@ export const joplinCommandToTinyMceCommands: JoplinCommandToTinyMceCommands = {
'search': { name: 'SearchReplace' },
'attachFile': { name: 'joplinAttach' },
'insertDateTime': true,
'textCopy': true,
'textCut': true,
'textPaste': true,
'textSelectAll': true,
};

View File

@@ -17,19 +17,19 @@ describe('editorCommandDeclarations', () => {
test.each([
[
{},
true,
{ textBold: true },
],
[
{
markdownEditorPaneVisible: false,
},
false,
{ textBold: false },
],
[
{
noteIsReadOnly: true,
},
false,
{ textBold: false },
],
[
// In the Markdown editor, but only the viewer is visible
@@ -37,7 +37,7 @@ describe('editorCommandDeclarations', () => {
markdownEditorPaneVisible: false,
richTextEditorVisible: false,
},
false,
{ textBold: false },
],
[
// In the Markdown editor, and the viewer is visible
@@ -45,7 +45,7 @@ describe('editorCommandDeclarations', () => {
markdownEditorPaneVisible: true,
richTextEditorVisible: false,
},
true,
{ textBold: true },
],
[
// In the RT editor
@@ -53,7 +53,7 @@ describe('editorCommandDeclarations', () => {
markdownEditorPaneVisible: false,
richTextEditorVisible: true,
},
true,
{ textBold: true },
],
[
// In the Markdown editor, and the command palette is visible
@@ -63,14 +63,57 @@ describe('editorCommandDeclarations', () => {
gotoAnythingVisible: true,
modalDialogVisible: true,
},
true,
{ textBold: true },
],
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied
])('should create the enabledCondition', (context: Record<string, any>, expected: boolean) => {
const condition = enabledCondition('textBold');
const wc = new WhenClause(condition);
const actual = wc.evaluate({ ...baseContext, ...context });
expect(actual).toBe(expected);
[
// In the Markdown editor, and the command palette is visible
{
markdownEditorPaneVisible: true,
richTextEditorVisible: false,
gotoAnythingVisible: true,
modalDialogVisible: true,
},
{ textBold: true },
],
[
// Rich Text Editor, HTML note
{
markdownEditorPaneVisible: false,
richTextEditorVisible: true,
noteIsMarkdown: false,
},
{
textCopy: true,
textPaste: true,
textSelectAll: true,
},
],
[
// Rich Text Editor, read-only note
{
markdownEditorPaneVisible: false,
richTextEditorVisible: true,
noteIsReadOnly: true,
},
{
textBold: false,
textPaste: false,
// TODO: textCopy should be enabled in read-only notes:
// textCopy: false,
},
],
])('should correctly determine whether command is enabled (case %#)', (context, expectedStates) => {
const actualStates = [];
for (const commandName of Object.keys(expectedStates)) {
const condition = enabledCondition(commandName);
const wc = new WhenClause(condition);
const actual = wc.evaluate({ ...baseContext, ...context });
actualStates.push([commandName, actual]);
}
const expectedStatesArray = Object.entries(expectedStates);
expect(actualStates).toEqual(expectedStatesArray);
});
});

View File

@@ -4,6 +4,10 @@ import { joplinCommandToTinyMceCommands } from './NoteBody/TinyMCE/utils/joplinC
const workWithHtmlNotes = [
'attachFile',
'textCopy',
'textCut',
'textPaste',
'textSelectAll',
];
export const enabledCondition = (commandName: string) => {

View File

@@ -124,8 +124,7 @@ export const runtime = (control: WindowControl): CommandRuntime => {
void CommandService.instance().execute('showModalMessage', `${modalMessage}\n\n${statusStrings.join('\n')}`);
},
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied
onError: (error: any) => {
onError: (error: string|Error) => {
errors.push(error);
console.warn(error);
},

View File

@@ -8,7 +8,7 @@
default-src 'self' joplin-content://* ;
connect-src 'self' * http://* https://* joplin-content://* blob: ;
style-src 'unsafe-inline' 'self' blob: joplin-content://* https://* http://* ;
child-src 'self' joplin-content://* ;
child-src 'self' joplin-content://* https://*.youtube.com https://*.youtube-nocookie.com ;
script-src 'self' 'unsafe-inline' joplin-content://* ;
media-src 'self' * blob: data: https://* http://* joplin-content://* ;
img-src 'self' blob: data: http://* https://* joplin-content://* ;

View File

@@ -1,7 +1,10 @@
// For a detailed explanation regarding each configuration property, visit:
// https://jestjs.io/docs/en/configuration.html
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
// All imported modules in your tests should be mocked automatically
// automock: false,

View File

@@ -1,6 +1,6 @@
{
"name": "@joplin/app-desktop",
"version": "3.5.10",
"version": "3.6.2",
"description": "Joplin for Desktop",
"main": "main.bundle.js",
"private": true,
@@ -92,6 +92,12 @@
"x64"
]
},
{
"target": "pkg",
"arch": [
"x64"
]
},
{
"target": "zip",
"arch": [
@@ -139,19 +145,19 @@
"@electron/rebuild": "3.7.2",
"@fortawesome/fontawesome-free": "5.15.4",
"@joeattardi/emoji-button": "4.6.4",
"@joplin/default-plugins": "~3.5",
"@joplin/editor": "~3.5",
"@joplin/lib": "~3.5",
"@joplin/renderer": "~3.5",
"@joplin/tools": "~3.5",
"@joplin/utils": "~3.5",
"@joplin/default-plugins": "~3.6",
"@joplin/editor": "~3.6",
"@joplin/lib": "~3.6",
"@joplin/renderer": "~3.6",
"@joplin/tools": "~3.6",
"@joplin/utils": "~3.6",
"@playwright/test": "1.55.1",
"@sentry/electron": "4.24.0",
"@testing-library/react-hooks": "8.0.1",
"@types/jest": "29.5.14",
"@types/mustache": "4.2.6",
"@types/node": "18.19.130",
"@types/react": "18.3.25",
"@types/react": "18.3.26",
"@types/react-dom": "18.3.7",
"@types/react-redux": "7.1.33",
"@types/styled-components": "5.1.32",
@@ -208,7 +214,7 @@
},
"dependencies": {
"@electron/remote": "2.1.3",
"@joplin/onenote-converter": "~3.5",
"@joplin/onenote-converter": "~3.6",
"fs-extra": "11.3.2",
"keytar": "7.9.0",
"node-fetch": "2.6.7",

View File

@@ -140,7 +140,10 @@ export default class AutoUpdaterService implements AutoUpdaterServiceInterface {
// electron's autoUpdater appends automatically the platform's yml file to the link so we should remove it
assetUrl = assetUrl.substring(0, assetUrl.lastIndexOf('/'));
autoUpdater.setFeedURL({ provider: 'generic', url: assetUrl });
await autoUpdater.checkForUpdates();
const result = await autoUpdater.checkForUpdates();
// Wait for the installation to finish. By default, .checkForUpdates runs in the background
await result.downloadPromise;
} catch (error) {
this.logger_.error(`Update download url failed: ${error.message}`);
this.isUpdateInProgress = false;

View File

@@ -0,0 +1,90 @@
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
exports.default = notarizeFile;
const fs_1 = require('fs');
const notarize_1 = require('@electron/notarize');
const execCommand = require('./execCommand');
const child_process_1 = require('child_process');
const util_1 = require('util');
const execAsync = (0, util_1.promisify)(child_process_1.exec);
// Same appId in electron-builder.
const appId = 'net.cozic.joplin-desktop';
function isDesktopAppTag(tagName) {
if (!tagName) { return false; }
return tagName[0] === 'v';
}
async function notarizeFile(filePath) {
if (process.platform !== 'darwin') { return; }
console.info(`Checking if notarization should be done on: ${filePath}`);
if (!process.env.IS_CONTINUOUS_INTEGRATION || !isDesktopAppTag(process.env.GIT_TAG_NAME)) {
console.info(`Either not running in CI or not processing a desktop app tag - skipping notarization. process.env.IS_CONTINUOUS_INTEGRATION = ${process.env.IS_CONTINUOUS_INTEGRATION}; process.env.GIT_TAG_NAME = ${process.env.GIT_TAG_NAME}`);
return;
}
if (!process.env.APPLE_ID || !process.env.APPLE_ID_PASSWORD) {
console.warn('Environment variables APPLE_ID and APPLE_ID_PASSWORD not found - notarization will NOT be done.');
return;
}
if (!(0, fs_1.existsSync)(filePath)) {
throw new Error(`Cannot find file at: ${filePath}`);
}
// Every x seconds we print something to stdout, otherwise CI may timeout
// the task after 10 minutes, and Apple notarization can take more time.
const waitingIntervalId = setInterval(() => {
console.info('.');
}, 60000);
const isPkg = filePath.endsWith('.pkg');
console.info(`Notarizing ${filePath}`);
try {
if (isPkg) {
await execAsync(`xcrun notarytool submit "${filePath}" ` +
`--apple-id "${process.env.APPLE_ID}" ` +
`--password "${process.env.APPLE_ID_PASSWORD}" ` +
`--team-id "${process.env.APPLE_ASC_PROVIDER}" ` +
'--wait', { maxBuffer: 1024 * 1024 });
} else {
await (0, notarize_1.notarize)({
appBundleId: appId,
appPath: filePath,
// Apple Developer email address
appleId: process.env.APPLE_ID,
// App-specific password: https://support.apple.com/en-us/HT204397
appleIdPassword: process.env.APPLE_ID_PASSWORD,
// When Apple ID is attached to multiple providers (eg if the
// account has been used to build multiple apps for different
// companies), in that case the provider "Team Short Name" (also
// known as "ProviderShortname") must be provided.
//
// Use this to get it:
//
// xcrun altool --list-providers -u APPLE_ID -p APPLE_ID_PASSWORD
// ascProvider: process.env.APPLE_ASC_PROVIDER,
// In our case, the team ID is the same as the legacy ASC_PROVIDER
teamId: process.env.APPLE_ASC_PROVIDER,
tool: 'notarytool',
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied
});
}
} catch (error) {
console.error(error);
process.exit(1);
}
clearInterval(waitingIntervalId);
// It appears that electron-notarize doesn't staple the app, but without
// this we were still getting the malware warning when launching the app.
// Stapling the app means attaching the notarization ticket to it, so that
// if the user is offline, macOS can still check if the app was notarized.
// So it seems to be more or less optional, but at least in our case it
// wasn't.
console.info('Stapling notarization ticket to the file...');
const staplerCmd = `xcrun stapler staple "${filePath}"`;
console.info(`> ${staplerCmd}`);
console.info(await execCommand(staplerCmd));
console.info(`Validating stapled file: ${filePath}`);
try {
await execAsync(`spctl -a -vv -t install "${filePath}"`);
} catch (error) {
console.error(`Failed validating stapled file: ${filePath}:`, error);
}
console.info(`Done notarizing ${filePath}`);
}
// # sourceMappingURL=notarizeFile.js.map

View File

@@ -89,8 +89,8 @@ android {
applicationId "net.cozic.joplin"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 2097787
versionName "3.5.7"
versionCode 2097788
versionName "3.6.0"
ndk {
abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
}
@@ -132,6 +132,17 @@ android {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
profileable {
// Release-like build that allows profiling with Android Studio Profiler
initWith release
signingConfig signingConfigs.debug
// Required for Android Studio Profiler to attach
debuggable false
// Keeps symbols for better stack traces in profiler
minifyEnabled false
// Use release variants of dependencies that don't have profileable
matchingFallbacks = ['release']
}
}
}

View File

@@ -46,6 +46,9 @@
android:theme="@style/AppTheme"
android:supportsRtl="true">
<!-- Enable profiling in release builds (Android 10+) -->
<profileable android:shell="true" />
<!--
2018-12-16: Changed android:launchMode from "singleInstance" to "singleTop" for Firebase notification
Previously singleInstance was necessary to prevent multiple instance of the RN app from running at the same time, but maybe no longer needed.

View File

@@ -511,7 +511,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Joplin/Joplin.entitlements;
CURRENT_PROJECT_VERSION = 147;
CURRENT_PROJECT_VERSION = 149;
DEVELOPMENT_TEAM = A9BXAFS6CT;
ENABLE_BITCODE = NO;
INFOPLIST_FILE = Joplin/Info.plist;
@@ -520,7 +520,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 13.5.1;
MARKETING_VERSION = 13.6.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -546,7 +546,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Joplin/Joplin.entitlements;
CURRENT_PROJECT_VERSION = 147;
CURRENT_PROJECT_VERSION = 149;
DEVELOPMENT_TEAM = A9BXAFS6CT;
INFOPLIST_FILE = Joplin/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 15.6;
@@ -554,7 +554,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 13.5.1;
MARKETING_VERSION = 13.6.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -747,7 +747,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 147;
CURRENT_PROJECT_VERSION = 149;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = A9BXAFS6CT;
GCC_C_LANGUAGE_STANDARD = gnu11;
@@ -758,7 +758,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 13.5.1;
MARKETING_VERSION = 13.6.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
OTHER_LDFLAGS = (
@@ -790,7 +790,7 @@
CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 147;
CURRENT_PROJECT_VERSION = 149;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = A9BXAFS6CT;
GCC_C_LANGUAGE_STANDARD = gnu11;
@@ -801,7 +801,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 13.5.1;
MARKETING_VERSION = 13.6.0;
MTL_FAST_MATH = YES;
OTHER_LDFLAGS = (
"$(inherited)",

View File

@@ -77,21 +77,14 @@
<key>UIAppFonts</key>
<array>
<string>AntDesign.ttf</string>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>Feather.ttf</string>
<string>FontAwesome.ttf</string>
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>MaterialDesignIcons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Octicons.ttf</string>
<string>Zocial.ttf</string>
<string>Fontisto.ttf</string>
</array>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>

View File

@@ -1406,7 +1406,7 @@ PODS:
- React-jsiexecutor
- React-RCTFBReactNativeSpec
- ReactCommon/turbomodule/core
- react-native-alarm-notification (3.5.0):
- react-native-alarm-notification (3.6.0):
- React
- react-native-document-picker (10.1.7):
- DoubleConversion
@@ -1514,7 +1514,7 @@ PODS:
- Yoga
- react-native-rsa-native (2.0.5):
- React
- react-native-saf-x (3.5.1):
- react-native-saf-x (3.6.0):
- React-Core
- react-native-safe-area-context (5.6.1):
- React-Core
@@ -1904,7 +1904,7 @@ PODS:
- React-Core
- RNDateTimePicker (8.4.5):
- React-Core
- RNDeviceInfo (14.0.4):
- RNDeviceInfo (14.1.1):
- React-Core
- RNExitApp (2.0.0):
- React-Core
@@ -1912,7 +1912,7 @@ PODS:
- React-Core
- RNFS (2.20.0):
- React-Core
- RNLocalize (3.5.2):
- RNLocalize (3.5.4):
- React-Core
- RNQuickAction (0.3.13):
- React
@@ -2355,7 +2355,7 @@ SPEC CHECKSUMS:
React-logger: 8edfcedc100544791cd82692ca5a574240a16219
React-Mapbuffer: c3f4b608e4a59dd2f6a416ef4d47a14400194468
React-microtasksnativemodule: 054f34e9b82f02bd40f09cebd4083828b5b2beb6
react-native-alarm-notification: a4326a743df72a94d361a4c3a21515556f650341
react-native-alarm-notification: 846df1df72eca38e711409b9c064a5c635ff1c32
react-native-document-picker: b6419b766863408dacbdf5e97b2f3a694c611150
react-native-geolocation: ec15ffebc53790314885eb9e5f2132132fbc2600
react-native-get-random-values: d16467cf726c618e9c7a8c3c39c31faa2244bbba
@@ -2364,7 +2364,7 @@ SPEC CHECKSUMS:
react-native-netinfo: cec9c4e86083cb5b6aba0e0711f563e2fbbff187
react-native-quick-crypto: b475b71e7fa4dbf3446be55e8ad4ef2c58ac4f7f
react-native-rsa-native: a7931cdda1f73a8576a46d7f431378c5550f0c38
react-native-saf-x: 404f0f9a29cc6bf21d88582e054c45a11b28c22b
react-native-saf-x: 50d176763ed692b379c190bf55ae7293a3ee09bb
react-native-safe-area-context: 2243039f43d10cb1ea30ec5ac57fc6d1448413f4
react-native-sqlite-storage: 0c84826214baaa498796c7e46a5ccc9a82e114ed
react-native-vector-icons: a45ecc326ec090450f152dfc7076ce1173331ce5
@@ -2409,11 +2409,11 @@ SPEC CHECKSUMS:
RNCClipboard: f6679d470d0da2bce2a37b0af7b9e0bf369ecda5
RNCPushNotificationIOS: 6c4ca3388c7434e4a662b92e4dfeeee858e6f440
RNDateTimePicker: 8c12d12e8660697c2e176d2f98775764431c141f
RNDeviceInfo: d863506092aef7e7af3a1c350c913d867d795047
RNDeviceInfo: bcce8752b5043a623fe3c26789679b473f705d3c
RNExitApp: 4432b9b7cc5ccec9f91c94e507849891282befd4
RNFileViewer: 4b5d83358214347e4ab2d4ca8d5c1c90d869e251
RNFS: 89de7d7f4c0f6bafa05343c578f61118c8282ed8
RNLocalize: 3c4d0abd777a546fa77bdb6caef85a87fb9ea349
RNLocalize: d7859f87f1083349c73aa089e360af33ef89efc2
RNQuickAction: c2c8f379e614428be0babe4d53a575739667744d
RNSecureRandom: b64d263529492a6897e236a22a2c4249aa1b53dc
RNShare: 40ace3f87cd881869e8085aced9dc16b425c74aa

View File

@@ -1,4 +1,8 @@
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
preset: 'react-native',
'moduleFileExtensions': [

View File

@@ -2,7 +2,7 @@
"name": "@joplin/app-mobile",
"description": "Joplin for Mobile",
"license": "AGPL-3.0-or-later",
"version": "3.5.0",
"version": "3.6.0",
"private": true,
"scripts": {
"start": "BROWSERSLIST_IGNORE_OLD_DATA=true react-native start --reset-cache",
@@ -22,12 +22,12 @@
},
"dependencies": {
"@bam.tech/react-native-image-resizer": "3.0.11",
"@joplin/editor": "~3.5",
"@joplin/lib": "~3.5",
"@joplin/react-native-alarm-notification": "~3.5",
"@joplin/react-native-saf-x": "~3.5",
"@joplin/renderer": "~3.5",
"@joplin/utils": "~3.5",
"@joplin/editor": "~3.6",
"@joplin/lib": "~3.6",
"@joplin/react-native-alarm-notification": "~3.6",
"@joplin/react-native-saf-x": "~3.6",
"@joplin/renderer": "~3.6",
"@joplin/utils": "~3.6",
"@js-draw/material-icons": "1.33.0",
"@react-native-clipboard/clipboard": "1.16.3",
"@react-native-community/datetimepicker": "8.4.5",
@@ -35,11 +35,11 @@
"@react-native-community/netinfo": "11.4.1",
"@react-native-community/push-notification-ios": "1.11.0",
"@react-native-documents/picker": "10.1.7",
"@react-native-vector-icons/fontawesome5": "12.3.0",
"@react-native-vector-icons/fontawesome5": "patch:@react-native-vector-icons/fontawesome5@npm%3A12.3.0#~/.yarn/patches/@react-native-vector-icons-fontawesome5-npm-12.3.0-a1ca46610f.patch",
"@react-native-vector-icons/get-image": "12.3.0",
"@react-native-vector-icons/ionicons": "12.3.0",
"@react-native-vector-icons/material-design-icons": "12.4.0",
"@react-native-vector-icons/material-icons": "12.4.0",
"@react-native-vector-icons/ionicons": "patch:@react-native-vector-icons/ionicons@npm%3A12.3.0#~/.yarn/patches/@react-native-vector-icons-ionicons-npm-12.3.0-9bd4746f3f.patch",
"@react-native-vector-icons/material-design-icons": "patch:@react-native-vector-icons/material-design-icons@npm%3A12.4.0#~/.yarn/patches/@react-native-vector-icons-material-design-icons-npm-12.4.0-890f7f618b.patch",
"@react-native-vector-icons/material-icons": "patch:@react-native-vector-icons/material-icons@npm%3A12.4.0#~/.yarn/patches/@react-native-vector-icons-material-icons-npm-12.4.0-94138e627b.patch",
"assert-browserify": "2.0.0",
"buffer": "6.0.3",
"color": "3.2.1",
@@ -59,14 +59,14 @@
"punycode": "2.3.1",
"react": "19.0.0",
"react-native": "0.79.2",
"react-native-device-info": "14.0.4",
"react-native-device-info": "14.1.1",
"react-native-dropdownalert": "5.2.0",
"react-native-exit-app": "2.0.0",
"react-native-file-viewer": "2.1.5",
"react-native-fs": "2.20.0",
"react-native-get-random-values": "1.11.0",
"react-native-image-picker": "8.2.1",
"react-native-localize": "3.5.2",
"react-native-localize": "3.5.4",
"react-native-modal-datetime-picker": "18.0.0",
"react-native-paper": "5.14.5",
"react-native-popup-menu": "0.17.0",
@@ -97,7 +97,7 @@
"@babel/plugin-transform-export-namespace-from": "7.27.1",
"@babel/preset-env": "7.25.3",
"@babel/runtime": "7.25.0",
"@joplin/tools": "~3.5",
"@joplin/tools": "~3.6",
"@joplin/turndown": "~4.0.80",
"@joplin/turndown-plugin-gfm": "~1.0.62",
"@pmmmwh/react-refresh-webpack-plugin": "^0.6.0",
@@ -114,13 +114,13 @@
"@types/node": "18.19.130",
"@types/react": "19.0.14",
"@types/react-redux": "7.1.33",
"@types/serviceworker": "0.0.157",
"@types/serviceworker": "0.0.160",
"@types/tar-stream": "3.1.4",
"babel-jest": "29.7.0",
"babel-loader": "9.1.3",
"babel-plugin-module-resolver": "4.1.0",
"babel-plugin-react-native-web": "0.21.1",
"esbuild": "0.25.10",
"babel-plugin-react-native-web": "0.21.2",
"esbuild": "0.25.11",
"fast-deep-equal": "3.1.3",
"fs-extra": "11.3.2",
"gulp": "4.0.2",
@@ -131,7 +131,7 @@
"nodemon": "3.1.10",
"punycode": "2.3.1",
"react-dom": "19.0.0",
"react-native-web": "0.21.1",
"react-native-web": "0.21.2",
"react-refresh": "0.17.0",
"react-test-renderer": "19.0.0",
"sharp": "0.34.4",

View File

@@ -11,7 +11,6 @@ import Alarm from '@joplin/lib/models/Alarm';
import time from '@joplin/lib/time';
import Logger from '@joplin/utils/Logger';
import NoteScreen from './components/screens/Note/Note';
import UpgradeSyncTargetScreen from './components/screens/UpgradeSyncTargetScreen';
import Setting, { } from '@joplin/lib/models/Setting';
import PoorManIntervals from '@joplin/lib/PoorManIntervals';
import { NotesParent, serializeNotesParent } from '@joplin/lib/reducer';
@@ -36,15 +35,6 @@ import reduxSharedMiddleware from '@joplin/lib/components/shared/reduxSharedMidd
const { AppNav } = require('./components/app-nav.js');
import Folder from '@joplin/lib/models/Folder';
import NotesScreen from './components/screens/Notes/Notes';
import TagsScreen from './components/screens/tags';
import ConfigScreen from './components/screens/ConfigScreen/ConfigScreen';
const { FolderScreen } = require('./components/screens/folder.js');
import LogScreen from './components/screens/LogScreen';
import StatusScreen from './components/screens/status';
import SearchScreen from './components/screens/SearchScreen';
const { OneDriveLoginScreen } = require('./components/screens/onedrive-login.js');
import EncryptionConfigScreen from './components/screens/encryption-config';
import DropboxLoginScreen from './components/screens/dropbox-login.js';
import { MenuProvider } from 'react-native-popup-menu';
import SideMenu, { SideMenuPosition } from './components/SideMenu';
import SideMenuContent from './components/side-menu-content';
@@ -63,11 +53,47 @@ const SyncTargetAmazonS3 = require('@joplin/lib/SyncTargetAmazonS3.js');
import SyncTargetJoplinServerSAML from '@joplin/lib/SyncTargetJoplinServerSAML';
import BiometricPopup from './components/biometrics/BiometricPopup';
import { isCallbackUrl, parseCallbackUrl, CallbackUrlCommand } from '@joplin/lib/callbackUrlUtils';
import JoplinCloudLoginScreen from './components/screens/JoplinCloudLoginScreen';
import SyncTargetNone from '@joplin/lib/SyncTargetNone';
// Lazy-loaded screens for faster startup
const TagsScreen = React.lazy(() => import('./components/screens/tags'));
const ConfigScreen = React.lazy(() => import('./components/screens/ConfigScreen/ConfigScreen'));
const FolderScreen = React.lazy(async () => {
// @ts-expect-error JS file without type declarations
const m: { FolderScreen: React.ComponentType } = await import('./components/screens/folder.js');
return { default: m.FolderScreen };
});
const LogScreen = React.lazy(() => import('./components/screens/LogScreen'));
const StatusScreen = React.lazy(() => import('./components/screens/status'));
const SearchScreen = React.lazy(() => import('./components/screens/SearchScreen'));
const OneDriveLoginScreen = React.lazy(async () => {
// @ts-expect-error JS file without type declarations
const m: { OneDriveLoginScreen: React.ComponentType } = await import('./components/screens/onedrive-login.js');
return { default: m.OneDriveLoginScreen };
});
const EncryptionConfigScreen = React.lazy(() => import('./components/screens/encryption-config'));
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- JS file without type declarations
const DropboxLoginScreen = React.lazy(async (): Promise<{ default: any }> => {
return await import('./components/screens/dropbox-login.js');
});
const JoplinCloudLoginScreen = React.lazy(() => import('./components/screens/JoplinCloudLoginScreen'));
const UpgradeSyncTargetScreen = React.lazy(() => import('./components/screens/UpgradeSyncTargetScreen'));
const ShareManager = React.lazy(() => import('./components/screens/ShareManager'));
const ProfileSwitcher = React.lazy(() => import('./components/ProfileSwitcher/ProfileSwitcher'));
const ProfileEditor = React.lazy(() => import('./components/ProfileSwitcher/ProfileEditor'));
const NoteRevisionViewer = React.lazy(() => import('./components/screens/NoteRevisionViewer'));
const DocumentScanner = React.lazy(() => import('./components/screens/DocumentScanner/DocumentScanner'));
const SyncWizard = React.lazy(() => import('./components/SyncWizard/SyncWizard'));
// SsoLoginScreen needs special handling due to its factory pattern
const SsoLoginScreen = React.lazy(async () => {
const [{ default: SsoLoginScreenFactory }, { default: SamlShared }] = await Promise.all([
import('./components/screens/SsoLoginScreen'),
import('@joplin/lib/components/shared/SamlShared'),
]);
return { default: SsoLoginScreenFactory(new SamlShared()) };
});
SyncTargetRegistry.addClass(SyncTargetNone);
SyncTargetRegistry.addClass(SyncTargetOneDrive);
@@ -85,29 +111,21 @@ import EncryptionService from '@joplin/lib/services/e2ee/EncryptionService';
import setupNotifications from './utils/setupNotifications';
import { loadMasterKeysFromSettings } from '@joplin/lib/services/e2ee/utils';
import { Theme, ThemeAppearance } from '@joplin/lib/themes/type';
import ProfileSwitcher from './components/ProfileSwitcher/ProfileSwitcher';
import ProfileEditor from './components/ProfileSwitcher/ProfileEditor';
import sensorInfo, { SensorInfo } from './components/biometrics/sensorInfo';
import { setDispatch } from './services/profiles';
import { ReactNode } from 'react';
import autodetectTheme, { onSystemColorSchemeChange } from './utils/autodetectTheme';
import PluginRunnerWebView from './components/plugins/PluginRunnerWebView';
import { refreshFolders, scheduleRefreshFolders } from '@joplin/lib/folders-screen-utils';
import ShareManager from './components/screens/ShareManager';
import { setDateFormat, setTimeFormat, setTimeLocale } from '@joplin/utils/time';
import DialogManager from './components/DialogManager';
import { AppState } from './utils/types';
import { getDisplayParentId } from '@joplin/lib/services/trash';
import PluginNotification from './components/plugins/PluginNotification';
import FocusControl from './components/accessibility/FocusControl/FocusControl';
import SsoLoginScreen from './components/screens/SsoLoginScreen';
import SamlShared from '@joplin/lib/components/shared/SamlShared';
import NoteRevisionViewer from './components/screens/NoteRevisionViewer';
import DocumentScanner from './components/screens/DocumentScanner/DocumentScanner';
import buildStartupTasks from './utils/buildStartupTasks';
import { SafeAreaProvider } from 'react-native-safe-area-context';
import appReducer from './utils/appReducer';
import SyncWizard from './components/SyncWizard/SyncWizard';
const logger = Logger.create('root');
const perfLogger = PerformanceLogger.create();
@@ -711,7 +729,7 @@ class AppComponent extends React.Component<AppComponentProps, AppComponentState>
OneDriveLogin: { screen: OneDriveLoginScreen },
DropboxLogin: { screen: DropboxLoginScreen },
JoplinCloudLogin: { screen: JoplinCloudLoginScreen },
JoplinServerSamlLogin: { screen: SsoLoginScreen(new SamlShared()) },
JoplinServerSamlLogin: { screen: SsoLoginScreen },
EncryptionConfig: { screen: EncryptionConfigScreen },
UpgradeSyncTarget: { screen: UpgradeSyncTargetScreen },
ShareManager: { screen: ShareManager },
@@ -759,11 +777,15 @@ class AppComponent extends React.Component<AppComponentProps, AppComponentState>
<View style={{ flexGrow: 1, flexShrink: 1, flexBasis: '100%' }}>
<SafeAreaView style={{ flex: 1 }} titleBarUnderlayColor={theme.backgroundColor2}>
<View style={{ flex: 1, backgroundColor: theme.backgroundColor }}>
{ shouldShowMainContent && <AppNav screens={appNavInit} dispatch={this.props.dispatch} /> }
<React.Suspense fallback={<View/>}>
{ shouldShowMainContent && <AppNav screens={appNavInit} dispatch={this.props.dispatch} /> }
</React.Suspense>
</View>
{/* eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied */}
<DropdownAlert alert={(func: any) => (this.dropdownAlert_ = func)} />
<SyncWizard/>
<React.Suspense fallback={null}>
<SyncWizard/>
</React.Suspense>
</SafeAreaView>
</View>
</SideMenu>

View File

@@ -1,6 +1,6 @@
import PluginAssetsLoader from '../PluginAssetsLoader';
import AlarmService from '@joplin/lib/services/AlarmService';
import Logger, { TargetType } from '@joplin/utils/Logger';
import Logger, { LogLevel, TargetType } from '@joplin/utils/Logger';
import BaseModel from '@joplin/lib/BaseModel';
import BaseService from '@joplin/lib/services/BaseService';
import ResourceService from '@joplin/lib/services/ResourceService';
@@ -200,11 +200,8 @@ const buildStartupTasks = (
const mainLogger = new Logger();
mainLogger.addTarget(TargetType.Database, { database: logDatabase, source: 'm' });
mainLogger.setLevel(Logger.LEVEL_INFO);
if (Setting.value('env') === 'dev') {
mainLogger.addTarget(TargetType.Console);
mainLogger.setLevel(Logger.LEVEL_DEBUG);
}
mainLogger.addTarget(TargetType.Console);
mainLogger.setLevel(Setting.value('env') === 'dev' ? LogLevel.Debug : LogLevel.Info);
Logger.initializeGlobalLogger(mainLogger);
initLib(mainLogger);

View File

@@ -12,7 +12,7 @@
default-src 'self' ;
connect-src 'self' * http://* https://* blob: ;
style-src 'unsafe-inline' 'self' blob: ;
child-src 'self' ;
child-src 'self' https://*.youtube.com https://*.youtube-nocookie.com ;
script-src 'self' 'unsafe-eval' 'unsafe-inline' ;
media-src 'self' blob: data: https://* http://* ;
img-src 'self' blob: data: http://* https://* ;

View File

@@ -1,6 +1,6 @@
{
"name": "@joplin/default-plugins",
"version": "3.5.0",
"version": "3.6.0",
"description": "Default plugins bundler",
"private": true,
"scripts": {
@@ -13,13 +13,13 @@
"url": "git+https://github.com/laurent22/joplin.git"
},
"devDependencies": {
"@types/yargs": "17.0.33",
"joplin-plugin-freehand-drawing": "4.2.0",
"@types/yargs": "17.0.34",
"joplin-plugin-freehand-drawing": "4.3.0",
"ts-node": "10.9.2",
"typescript": "5.8.3"
},
"dependencies": {
"@joplin/utils": "~3.5",
"@joplin/utils": "~3.6",
"fs-extra": "11.3.2",
"yargs": "17.7.2"
}

View File

@@ -3,39 +3,17 @@ import { EditorSelection } from '@codemirror/state';
import { EditorView } from '@codemirror/view';
import uslug from '@joplin/fork-uslug/lib/uslug';
import { SyntaxNodeRef } from '@lezer/common';
import htmlNodeInfo from '../utils/htmlNodeInfo';
const jumpToHash = (view: EditorView, hash: string) => {
const state = view.state;
const timeout = 1_000; // Maximum time to spend parsing the syntax tree
let targetLocation: number|undefined = undefined;
const removeQuotes = (quoted: string) => quoted.replace(/^["'](.*)["']$/, '$1');
const makeEnterNode = (offset: number) => (node: SyntaxNodeRef) => {
const nodeToText = (node: SyntaxNodeRef) => {
return state.sliceDoc(node.from + offset, node.to + offset);
};
// Returns the attribute with the given name for [node]
const getHtmlNodeAttr = (node: SyntaxNodeRef, attrName: string) => {
if (node.from === node.to) return null; // Empty
const content = node.node.resolveInner(node.from + 1);
// Search for the "id" attribute
const attributes = content.getChildren('Attribute');
for (const attribute of attributes) {
const nameNode = attribute.getChild('AttributeName');
const valueNode = attribute.getChild('AttributeValue');
if (nameNode && valueNode) {
const name = nodeToText(nameNode).toLowerCase().replace(/^"(.*)"$/, '$1');
if (name === attrName) {
return removeQuotes(nodeToText(valueNode));
}
}
}
return null;
};
const found = targetLocation !== undefined;
if (found) return false; // Skip this node
@@ -46,13 +24,14 @@ const jumpToHash = (view: EditorView, hash: string) => {
.replace(/^#+\s/, '') // Leading #s in headers
.replace(/\n-+$/, ''); // Trailing --s in headers
matches = hash === uslug(nodeText);
} else if (node.name === 'HTMLTag' || node.name === 'HTMLBlock') {
} else if (node.name === 'HTMLBlock') {
// CodeMirror adds HTML information to Markdown documents using overlays attached
// to HTMLTag and HTMLBlock nodes.
// Use .enter to enter the overlay and visit the HTML nodes:
node.node.enter(node.from, 1).toTree().iterate({ enter: makeEnterNode(node.from) });
} else if (node.name === 'OpenTag') {
matches = getHtmlNodeAttr(node, 'id') === hash || getHtmlNodeAttr(node, 'name') === hash;
} else if (node.name === 'OpenTag' || node.name === 'HTMLTag') {
const htmlNodeDetails = htmlNodeInfo(node, state);
matches = htmlNodeDetails.getAttr('id') === hash || htmlNodeDetails.getAttr('name') === hash;
}
if (matches) {

View File

@@ -4,6 +4,7 @@ import replaceBulletLists from './replaceBulletLists';
import replaceCheckboxes from './replaceCheckboxes';
import replaceDividers from './replaceDividers';
import replaceFormatCharacters from './replaceFormatCharacters';
import replaceInlineHtml from './replaceInlineHtml';
export default () => {
return [
@@ -13,5 +14,6 @@ export default () => {
replaceBackslashEscapes,
replaceDividers,
addFormattingClasses,
replaceInlineHtml,
];
};

View File

@@ -0,0 +1,27 @@
import { EditorSelection } from '@codemirror/state';
import createTestEditor from '../../testing/createTestEditor';
import replaceInlineHtml from './replaceInlineHtml';
const createEditor = async (initialMarkdown: string, expectedTags: string[] = ['HTMLTag']) => {
const editor = await createTestEditor(
initialMarkdown,
EditorSelection.cursor(0),
expectedTags,
[replaceInlineHtml],
);
return editor;
};
describe('replaceInlineHtml', () => {
test.each([
{ markdown: '<sup>Test</sup>', expectedTagsQuery: 'sup' },
{ markdown: '<strike>Test</strike>', expectedTagsQuery: 'strike' },
{ markdown: 'Test: <span style="color: red;">Test</span>', expectedTagsQuery: 'span[style]' },
{ markdown: 'Test: <span style="color: rgb(123, 0, 0);">Test</span>', expectedTagsQuery: 'span[style]' },
])('should render inline HTML (case %#)', async ({ markdown, expectedTagsQuery }) => {
// Add additional newlines: Ensure that the cursor isn't initially on the same line as the content to be rendered:
const editor = await createEditor(`\n\n${markdown}\n\n`);
expect(editor.contentDOM.querySelector(expectedTagsQuery)).toBeTruthy();
});
});

View File

@@ -0,0 +1,90 @@
import makeInlineReplaceExtension from './utils/makeInlineReplaceExtension';
import { Decoration } from '@codemirror/view';
import htmlNodeInfo, { HtmlNodeInfo } from '../../utils/htmlNodeInfo';
import { SyntaxNodeRef } from '@lezer/common';
import { EditorState } from '@codemirror/state';
const hideDecoration = Decoration.replace({});
type OnRenderTagContent = (openingTag: HtmlNodeInfo)=> Decoration;
const createHtmlReplacementExtension = (tagName: string, onRenderContent: OnRenderTagContent) => {
const isMatchingTag = (info: HtmlNodeInfo) => {
return info.tagName().toLowerCase() === tagName;
};
const isMatchingOpeningTag = (info: HtmlNodeInfo) => {
return isMatchingTag(info) && info.opening;
};
const isMatchingClosingTag = (info: HtmlNodeInfo) => {
return isMatchingTag(info) && info.closing;
};
const findClosingTag = (openingTag: SyntaxNodeRef, state: EditorState) => {
const openingTagInfo = htmlNodeInfo(openingTag, state);
// Self-closing?
if (openingTagInfo.closing) {
return openingTag;
}
let cursor = openingTag.node.nextSibling;
let nestedTagCounter = 1;
// Find the matching closing tag
for (; !!cursor && nestedTagCounter > 0; cursor = cursor.nextSibling) {
const info = htmlNodeInfo(cursor, state);
if (isMatchingOpeningTag(info)) {
nestedTagCounter ++;
} else if (isMatchingClosingTag(info)) {
nestedTagCounter --;
}
if (nestedTagCounter === 0) {
break;
}
}
return cursor;
};
const hideTags = makeInlineReplaceExtension({
createDecoration: (node, state) => {
const info = htmlNodeInfo(node, state);
return info && isMatchingTag(info) ? hideDecoration : null;
},
});
const styleContent = makeInlineReplaceExtension({
createDecoration: (node, state) => {
const info = htmlNodeInfo(node, state);
if (!info || !isMatchingOpeningTag(info)) return null;
return onRenderContent(info);
},
getDecorationRange(node, state) {
const closingTag = findClosingTag(node, state);
if (closingTag) {
return [node.to, closingTag.from];
} else {
return null;
}
},
});
return [hideTags, styleContent];
};
export default [
createHtmlReplacementExtension('sub', () => Decoration.mark({ tagName: 'sub' })),
createHtmlReplacementExtension('sup', () => Decoration.mark({ tagName: 'sup' })),
createHtmlReplacementExtension('strike', () => Decoration.mark({ tagName: 'strike' })),
createHtmlReplacementExtension('span', (info) => {
const styles = info.getAttr('style') ?? '';
const colorMatch = styles.match(/color:\s*(#?[a-z0-9A-Z]+|rgba?\([0-9, ]+\))(;|$)/);
return Decoration.mark({
attributes: {
style: colorMatch ? `color: ${colorMatch[1]};` : '',
},
});
}),
].flat();

View File

@@ -0,0 +1,88 @@
import { EditorState } from '@codemirror/state';
import { SyntaxNodeRef } from '@lezer/common';
export interface HtmlNodeInfo {
node: SyntaxNodeRef;
opening: boolean;
closing: boolean;
from: number;
to: number;
tagName: ()=> string;
getAttr: (attributeName: string)=> string;
}
type OnGetNodeContent = (node: SyntaxNodeRef)=> string;
const removeQuotes = (quoted: string) => quoted.replace(/^["'](.*)["']$/, '$1');
const getHtmlNodeAttr = (node: SyntaxNodeRef, attrName: string, getText: OnGetNodeContent) => {
if (node.from === node.to) return null; // Empty
const content = node.node.resolveInner(node.from + 1);
// Search for the "id" attribute
const attributes = content.getChildren('Attribute');
for (const attribute of attributes) {
const nameNode = attribute.getChild('AttributeName');
const valueNode = attribute.getChild('AttributeValue');
if (nameNode && valueNode) {
const name = getText(nameNode).toLowerCase().replace(/^"(.*)"$/, '$1');
if (name === attrName) {
return removeQuotes(getText(valueNode));
}
}
}
return null;
};
// Utility function to access CodeMirror HTML node information, based on
// the corresponding Markdown node.
const htmlNodeInfo = (node: SyntaxNodeRef, state: EditorState, offset = 0): HtmlNodeInfo|null => {
// Already an HTML node?
if (node.name === 'OpenTag' || node.name === 'CloseTag' || node.name === 'SelfClosingTag') {
const getNodeText = (childNode: SyntaxNodeRef) => state.sliceDoc(childNode.from + offset, childNode.to + offset);
const selfClosing = node.name === 'SelfClosingTag';
return {
node,
opening: node.name === 'OpenTag' || selfClosing,
closing: node.name === 'CloseTag' || selfClosing,
from: node.from + offset,
to: node.to + offset,
tagName: () => {
const nodeText = getNodeText(node).trim();
const tagNameMatch = nodeText.match(/^<\/?([^>\s]+)/);
if (tagNameMatch) {
return tagNameMatch[1];
}
return null;
},
getAttr: (name: string) => {
return getHtmlNodeAttr(node, name, getNodeText);
},
};
}
// Convert Markdown HTML nodes to HTML nodes
if (node.name === 'HTMLTag' || node.name === 'HTMLBlock') {
const globalOffset = node.from + offset;
let resolved: HtmlNodeInfo|null = null;
// CodeMirror adds HTML information to Markdown documents using overlays attached
// to HTMLTag and HTMLBlock nodes.
// Use .enter to enter the overlay and visit the HTML nodes:
node.node.enter(node.from, 1).toTree().iterate({
enter: (subNode) => {
resolved ??= htmlNodeInfo(subNode, state, globalOffset);
return !resolved;
},
});
return resolved;
}
return null;
};
export default htmlNodeInfo;

View File

@@ -1,4 +1,8 @@
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
'moduleFileExtensions': [
'ts',
'tsx',

View File

@@ -1,6 +1,6 @@
{
"name": "@joplin/editor",
"version": "3.5.0",
"version": "3.6.0",
"description": "Web-based markdown editor",
"private": true,
"scripts": {
@@ -14,12 +14,12 @@
"url": "git+https://github.com/laurent22/joplin.git"
},
"devDependencies": {
"@joplin/lib": "~3.5",
"@joplin/utils": "~3.5",
"@joplin/lib": "~3.6",
"@joplin/utils": "~3.6",
"@testing-library/react-hooks": "8.0.1",
"@types/jest": "29.5.14",
"@types/node": "18.19.130",
"@types/react": "18.3.25",
"@types/react": "18.3.26",
"@types/react-redux": "7.1.33",
"@types/styled-components": "5.1.32",
"jest": "29.7.0",

View File

@@ -1,4 +1,8 @@
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
testMatch: [
'**/*.test.js',
],

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 1,
"id": "<%= pluginId %>",
"app_min_version": "3.5",
"app_min_version": "3.6",
"version": "1.0.0",
"name": "<%= pluginName %>",
"description": "<%= pluginDescription %>",

View File

@@ -1,4 +1,8 @@
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
testMatch: [
'**/*.test.js',
],

View File

@@ -1,6 +1,6 @@
{
"name": "generator-joplin",
"version": "3.5.1",
"version": "3.6.0",
"description": "Scaffolds out a new Joplin plugin",
"homepage": "https://github.com/laurent22/joplin/tree/dev/packages/generator-joplin",
"author": {
@@ -30,8 +30,8 @@
"yosay": "2.0.2"
},
"devDependencies": {
"@joplin/lib": "~3.5",
"@joplin/tools": "~3.5",
"@joplin/lib": "~3.6",
"@joplin/tools": "~3.6",
"jest": "29.7.0",
"ts-node": "10.9.2"
},

View File

@@ -1,4 +1,8 @@
const baseConfig = require('../../jest.config.base.js');
module.exports = {
...baseConfig,
testMatch: ['**/*.test.js'],
testPathIgnorePatterns: ['<rootDir>/node_modules/'],
};

View File

@@ -1,6 +1,6 @@
{
"name": "@joplin/htmlpack",
"version": "3.5.1",
"version": "3.6.0",
"description": "Pack an HTML file and all its linked resources into a single HTML file",
"main": "dist/index.js",
"types": "index.ts",

View File

@@ -1,6 +1,6 @@
import Resource from './models/Resource';
import shim from './shim';
import Database from './database';
import Database, { Row } from './database';
import { SqlQuery } from './services/database/types';
import addMigrationFile from './services/database/addMigrationFile';
import sqlStringToLines from './services/database/sqlStringToLines';
@@ -314,34 +314,44 @@ export default class JoplinDatabase extends Database {
throw new Error(`\`notes_fts\` (${countFieldsNotesFts} fields) must have the same number of fields as \`items_fts\` (${countFieldsItemsFts} fields) for the search engine BM25 algorithm to work`);
}
const tableRows = await this.selectAll('SELECT name FROM sqlite_master WHERE type=\'table\'');
interface TableRow {
name: string;
}
const tableRows: TableRow[] = await this.selectAll('SELECT name FROM sqlite_master WHERE type=\'table\'');
for (let i = 0; i < tableRows.length; i++) {
let pragmas: Row[] = [];
const tableName = tableRows[i].name;
if (tableName === 'android_metadata') continue;
if (tableName === 'table_fields') continue;
if (tableName === 'sqlite_sequence') continue;
if (tableName.indexOf('notes_fts') === 0) continue;
if (tableName.indexOf('items_fts') === 0) continue;
if (tableName === 'notes_spellfix') continue;
if (tableName === 'search_aux') continue;
try {
if (tableName === 'android_metadata') continue;
if (tableName === 'table_fields') continue;
if (tableName.startsWith('sqlite_')) continue;
if (tableName.indexOf('notes_fts') === 0) continue;
if (tableName.indexOf('items_fts') === 0) continue;
if (tableName === 'notes_spellfix') continue;
if (tableName === 'search_aux') continue;
const pragmas = await this.selectAll(`PRAGMA table_info("${tableName}")`);
pragmas = await this.selectAll(`PRAGMA table_info("${tableName}")`);
for (let i = 0; i < pragmas.length; i++) {
const item = pragmas[i];
// In SQLite, if the default value is a string it has double quotes around it, so remove them here
let defaultValue = item.dflt_value;
if (typeof defaultValue === 'string' && defaultValue.length >= 2 && defaultValue[0] === '"' && defaultValue[defaultValue.length - 1] === '"') {
defaultValue = defaultValue.substr(1, defaultValue.length - 2);
for (let i = 0; i < pragmas.length; i++) {
const item = pragmas[i];
// In SQLite, if the default value is a string it has double quotes around it, so remove them here
let defaultValue = item.dflt_value;
if (typeof defaultValue === 'string' && defaultValue.length >= 2 && defaultValue[0] === '"' && defaultValue[defaultValue.length - 1] === '"') {
defaultValue = defaultValue.substr(1, defaultValue.length - 2);
}
const q = Database.insertQuery('table_fields', {
table_name: tableName,
field_name: item.name,
field_type: Database.enumId('fieldType', item.type),
field_default: defaultValue,
});
queries.push(q);
}
const q = Database.insertQuery('table_fields', {
table_name: tableName,
field_name: item.name,
field_type: Database.enumId('fieldType', item.type),
field_default: defaultValue,
});
queries.push(q);
} catch (error) {
error.message = `On table: ${tableName}: Pragma: ${JSON.stringify(pragmas)}: ${error.message}`;
throw error;
}
}

View File

@@ -130,7 +130,7 @@ export default class PerformanceLogger {
const startTime = performance.now();
this.lastLogTime_ = startTime;
PerformanceLogger.logDebug_(`${name}: Start at ${formatAbsoluteTime(startTime)}`);
PerformanceLogger.log_(`${name}: Start at ${formatAbsoluteTime(startTime)}`);
const onEnd = () => {
const now = performance.now();
@@ -140,12 +140,7 @@ export default class PerformanceLogger {
performance.measure(name, `${uniqueTaskId}-start`, `${uniqueTaskId}-end`);
}
const duration = now - startTime;
// Increase the log level for long-running tasks
const isLong = duration >= Second / 10;
const log = isLong ? PerformanceLogger.log_ : PerformanceLogger.logDebug_;
log(`${name}: End at ${formatAbsoluteTime(now)} (took ${formatTaskDuration(now - startTime)})`);
PerformanceLogger.log_(`${name}: End at ${formatAbsoluteTime(now)} (took ${formatTaskDuration(now - startTime)})`);
};
return {
onEnd,

View File

@@ -151,7 +151,7 @@ shared.saveNoteButton_press = async function(comp: BaseNoteScreenComponent, stat
const savedNote = 'fields' in saveOptions && !saveOptions.fields.length ? { ...note } : await Note.save(note, saveOptions);
const stateNote = state.note;
const stateNote = comp.state.note;
// Note was reloaded while being saved.
if (!recreatedNote && (!stateNote || stateNote.id !== savedNote.id)) return releaseMutex();

View File

@@ -26,11 +26,6 @@ export interface ArchiveExtractOptions {
extractTo: string;
}
export interface CabExtractOptions extends ArchiveExtractOptions {
// Only files matching the pattern will be extracted
fileNamePattern: string;
}
export interface ZipEntry {
entryName: string;
name: string;
@@ -276,8 +271,4 @@ export default class FsDriverBase {
public async zipExtract(_options: ArchiveExtractOptions): Promise<ZipEntry[]> {
throw new Error('Not implemented: zipExtract');
}
public async cabExtract(_options: CabExtractOptions) {
throw new Error('Not implemented: cabExtract.');
}
}

View File

@@ -1,8 +1,6 @@
import AdmZip = require('adm-zip');
import FsDriverBase, { Stat, ZipEntry, ArchiveExtractOptions, CabExtractOptions } from './fs-driver-base';
import FsDriverBase, { Stat, ZipEntry, ArchiveExtractOptions } from './fs-driver-base';
import time from './time';
import { execCommand } from '@joplin/utils';
import { extname } from 'path';
const md5File = require('md5-file');
const fs = require('fs-extra');
@@ -218,25 +216,4 @@ export default class FsDriverNode extends FsDriverBase {
zip.extractAllTo(options.extractTo, false);
return zip.getEntries();
}
public async cabExtract(options: CabExtractOptions) {
if (process.platform !== 'win32') {
throw new Error('Extracting CAB archives is only supported on Windows.');
}
const source = this.resolve(options.source);
const extractTo = this.resolve(options.extractTo);
if (extname(source).toLowerCase() !== '.cab') {
throw new Error(`Invalid file extension. Expected .CAB. Was ${extname(source)}`);
}
// See https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/expand
await execCommand([
'expand.exe',
source,
`-f:${options.fileNamePattern}`,
extractTo,
], { quiet: true });
}
}

View File

@@ -1,3 +1,4 @@
const baseConfig = require('../../jest.config.base.js');
const testPathIgnorePatterns = [
'<rootDir>/node_modules/',
@@ -11,6 +12,7 @@ if (!process.env.IS_CONTINUOUS_INTEGRATION) {
}
module.exports = {
...baseConfig,
testMatch: [
'**/*.test.js',
],

View File

@@ -140,6 +140,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -371,6 +374,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"غامق"
],
@@ -497,6 +503,9 @@
"Checking... Please wait.": [
"التحقق جارٍ... فضلاً انتظر."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"إختر خيار"
],
@@ -569,6 +578,9 @@
"Command": [
"أمر"
],
"COMMAND": [
""
],
"Command palette": [
"لوحة الأوامر"
],
@@ -859,6 +871,9 @@
"Delete selected notes": [
"حدف الملاحظات المحددة"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -946,6 +961,9 @@
"Displays the complete information about note.": [
"يعرض المعلومات الكاملة عن الملاحظة."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"يعرض الملاحظة المعطاة."
],
@@ -1695,6 +1713,9 @@
"Keychain Supported: %s": [
"سلسلة المفاتيح المدعومة: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"المفاتيح التي تحتاج إلى ترقية"
],
@@ -1808,6 +1829,9 @@
"Manage your plugins": [
"إدارة الإضافات الخاصة بك"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manual": [
"يدوي"
],
@@ -1985,6 +2009,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"لم يعرَّف محرر نصوص. فضلاً اضبطه باستخدام `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nord"
],
@@ -2141,6 +2168,9 @@
"Open Sync Wizard...": [
"فتح معالج المزامنة..."
],
"Open-source licences": [
""
],
"Open...": [
"فتح..."
],
@@ -2153,6 +2183,9 @@
"Options": [
"خيارات"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2573,6 +2606,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2711,6 +2747,9 @@
"Source: ": [
"المصدر: "
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3188,6 +3227,9 @@
"Try again": [
"حاول ثانية"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"أكتب `help [command]` للمزيد من المعلومات عن أمر ما ، أو `help all` لمعلومات الاستخدام الكاملة."
],

View File

@@ -128,6 +128,9 @@
"A5": [
""
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -332,6 +335,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Удебелен"
],
@@ -437,6 +443,9 @@
"Checking... Please wait.": [
"Проверявам... Моля изчакайте."
],
"Chinese/Japanese/Korean characters": [
""
],
"Chrome Web Store": [
""
],
@@ -497,6 +506,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -521,6 +533,9 @@
"Configuration": [
"Настройки"
],
"Configured keyboard shortcuts:": [
""
],
"Configures the size of scrollbars used in the app.": [
""
],
@@ -683,6 +698,9 @@
"Delete local data and re-download from sync target": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -764,6 +782,9 @@
"Displays the complete information about note.": [
"Показва пълната информация за бележката."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Показва зададената бележка."
],
@@ -1379,6 +1400,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -1466,6 +1490,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manual": [
"Ръчен"
],
@@ -1619,6 +1646,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Няма зададен текстови редактор. Моля задайте го с командата: `config editor <път-до-редактора>`"
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -1742,6 +1772,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
"Отвори..."
],
@@ -1754,6 +1787,9 @@
"Options": [
"Конфигурация"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2162,6 +2198,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2282,6 +2321,9 @@
"Source format: %s": [
"Формат на източника: %s"
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -2739,6 +2781,9 @@
"Try it now": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Въведете `help [команда]` за повече информация относно командата, или въведете `help all` за пълната информация за ползването на командния ред."
],

View File

@@ -125,6 +125,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -335,6 +338,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Masna slova"
],
@@ -440,6 +446,9 @@
"Checking... Please wait.": [
"Provjeravam... Pričekajte."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Odaberi opciju"
],
@@ -500,6 +509,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -671,6 +683,9 @@
"Delete local data and re-download from sync target": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -752,6 +767,9 @@
"Displays the complete information about note.": [
"Prikazuje potpune informacije o bilješci."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Prikazuje datu bilješku."
],
@@ -1370,6 +1388,9 @@
"Keychain Supported: %s": [
"Podržani privjesak: %s"
],
"KEYS": [
""
],
"Label": [
""
],
@@ -1451,6 +1472,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manual": [
"Ručno"
],
@@ -1604,6 +1628,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Nije određen program za uređivanje teksta. Precizirajte ga pomoću `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -1715,6 +1742,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
"Otvori..."
],
@@ -1727,6 +1757,9 @@
"Options": [
"Opcije"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2126,6 +2159,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2249,6 +2285,9 @@
"Source format: %s": [
"Izvorni format: %s"
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -2701,6 +2740,9 @@
"Try again": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Kucajte `help [command]` za više informacija o komandi; ili kucajte `help all` za detaljne informacije o načinu korištenja."
],

View File

@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Quant a"
],
@@ -470,6 +473,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Negreta"
],
@@ -608,6 +614,9 @@
"Checking... Please wait.": [
"Verificant... Espereu."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Escolliu una opció"
],
@@ -674,9 +683,6 @@
"Code View": [
"Vista de codi"
],
"Code:": [
"Codi:"
],
"Collaborate on a notebook with others": [
"Col·laborar en una llibreta amb altres"
],
@@ -704,6 +710,9 @@
"Command": [
"Ordre"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta d'ordres"
],
@@ -792,9 +801,6 @@
"Convert it": [
"Converteix-lo"
],
"Convert note to Markdown": [
"Converteix la nota a Markdown"
],
"Convert to note": [
"Converteix a nota"
],
@@ -850,9 +856,6 @@
"Could not connect to plugin repository.": [
"No s'ha pogut connectar al repositori d'extensions."
],
"Could not convert note to Markdown: %s": [
"No s'ha pogut convertir la nota a Markdown: %s"
],
"Could not export notes: %s": [
"No s'han pogut exportar les notes: %s"
],
@@ -1063,6 +1066,9 @@
"Delete selected notes": [
"Suprimeix les notes seleccionades"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Suprimir la llibreta de la safata d'entrada?\n\nSi suprimiu la llibreta de la safata d'entrada, és possible que es perdin els correus electrònics que s'hagin enviat recentment."
],
@@ -1168,6 +1174,9 @@
"Displays the complete information about note.": [
"Mostra la informació completa sobre la nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Mostra la nota indicada."
],
@@ -2084,6 +2093,9 @@
"Keychain Supported: %s": [
"Clauer admès: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Claus que requereixen actualització"
],
@@ -2230,6 +2242,9 @@
"Manage your plugins": [
"Gestioneu les extensions"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gestiona la configuració E2EE. Les ordres són `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, i `target-status`."
],
@@ -2486,6 +2501,9 @@
"No updates available": [
"No hi ha actualitzacions disponibles"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"(cap)"
],
@@ -2696,6 +2714,9 @@
"Open Sync Wizard...": [
"Obre l'assistent de sincronització..."
],
"Open-source licences": [
""
],
"Open...": [
"Obre..."
],
@@ -2717,6 +2738,9 @@
"Options": [
"Opcions"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Llista ordenada"
],
@@ -3348,6 +3372,9 @@
"Select parent notebook": [
"Selecciona la llibreta principal"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Seleccionat: %s"
],
@@ -3552,6 +3579,9 @@
"Source: ": [
"Font: "
],
"SPACE": [
""
],
"Spacer": [
"Espaiador"
],
@@ -3859,9 +3889,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"La nota \"%s\" s'ha restaurat correctament a la llibreta \"%s\"."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"La nota s'ha convertit a Markdown i la nota original s'ha traslladat a la paperera"
],
"The note was successfully moved to the trash.": [
"La nota s'ha traslladat amb èxit a la paperera.",
"Les notes s'han traslladat amb èxit a la paperera."
@@ -4163,6 +4190,9 @@
"Try it now": [
"Proveu-ho ara"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Escriviu «help [command]» per a més informació sobre l'ordre; o escriviu «help all» per a la informació d'ús completa."
],

View File

@@ -143,6 +143,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -374,6 +377,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Tučně"
],
@@ -500,6 +506,9 @@
"Checking... Please wait.": [
"Probíhá kontrola... Počkejte prosím."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Zvolit možnost"
],
@@ -572,6 +581,9 @@
"Command": [
"Příkaz"
],
"COMMAND": [
""
],
"Command palette": [
"Nabídka příkazů"
],
@@ -844,6 +856,9 @@
"Delete selected notes": [
"Odstranění vybraných poznámek"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -931,6 +946,9 @@
"Displays the complete information about note.": [
"Zobrazí veškeré informace o poznámce."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Zobrazí vybranou poznámku."
],
@@ -1689,6 +1707,9 @@
"Keychain Supported: %s": [
"Podpora klíčenky: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Klíče, které je třeba aktualizovat"
],
@@ -1802,6 +1823,9 @@
"Manage your plugins": [
"Správa vašich rozšíření"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Spravuje konfiguraci koncového šifrování. Příkazy jsou `zapnout`, `vypnout`, `dešifrovat`, `stav`, `dešifrovat soubor` a `cílový stav`."
],
@@ -1997,6 +2021,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Nebyl vybrán textový editor. Prosím nastavte jej pomocí `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nord"
],
@@ -2156,6 +2183,9 @@
"Open Sync Wizard...": [
"Otevřete Průvodce synchronizací..."
],
"Open-source licences": [
""
],
"Open...": [
"Otevřít..."
],
@@ -2168,6 +2198,9 @@
"Options": [
"Nastavení"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Seznam objednávek"
],
@@ -2639,6 +2672,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2795,6 +2831,9 @@
"Source: ": [
"Zdroj: "
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3308,6 +3347,9 @@
"Try it now": [
"Vyzkoušejte to nyní"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Zadejte `help [příkaz]` pro více informací o příkazu; nebo `help all` pro kompletní nápovědu."
],

View File

@@ -168,7 +168,7 @@
"[Ingen]"
],
"A brief description of the image:": [
""
"En kort beskrivelse af billedet:"
],
"A comma-separated list of words. May be used for uncommon words, to help voice typing spell them correctly.": [
"En kommasepareret liste af ord. Kan bruges til ualmindelige ord for at hjælpe stemmeindtastning med at stave dem korrekt."
@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Om"
],
@@ -243,7 +246,7 @@
"Tilføj brødtekst"
],
"Add column": [
""
"Tilføj kolonne"
],
"Add new": [
"Tilføj ny"
@@ -254,6 +257,9 @@
"Add recipient:": [
"Tilføj modtager:"
],
"Add row": [
"Tilføj række"
],
"Add tags:": [
"Tilføj etiketter:"
],
@@ -342,7 +348,7 @@
"Der blev fundet en automatisk gemt tegning. Vedhæfter en kopi af den til noten?"
],
"An error occurred while sending the response. This can happen if the app is offline or cannot connect to the server.\nError: %s": [
""
"Der opstod en fejl under afsendelse af svaret. Dette kan ske, hvis appen er offline eller ikke kan oprette forbindelse til serveren.\nFejl: %s"
],
"An error occurred: %s": [
"Der opstod en fejl: %s"
@@ -467,6 +473,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Fed"
],
@@ -605,6 +614,9 @@
"Checking... Please wait.": [
"Tjekker... Vent venligst."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Vælg en mulighed"
],
@@ -671,9 +683,6 @@
"Code View": [
"Kodevisning"
],
"Code:": [
"Kode:"
],
"Collaborate on a notebook with others": [
"Samarbejd med andre om en notesbog"
],
@@ -683,6 +692,9 @@
"Collapse all notebooks": [
"Luk alle notesbøger"
],
"Collapse title": [
"Fold titel sammen"
],
"Collapsed": [
"Foldet sammen"
],
@@ -698,6 +710,9 @@
"Command": [
"Kommando"
],
"COMMAND": [
""
],
"Command palette": [
"Kommando-udvalg"
],
@@ -786,9 +801,6 @@
"Convert it": [
"Konverter den"
],
"Convert note to Markdown": [
"Konverter note til Markdown"
],
"Convert to note": [
"Konverter til note"
],
@@ -844,9 +856,6 @@
"Could not connect to plugin repository.": [
"Kunne ikke forbinde til plugin-lager."
],
"Could not convert note to Markdown: %s": [
"Kunne ikke konvertere note til Markdown: %s"
],
"Could not export notes: %s": [
"Kunne ikke eksportere noterne: %s"
],
@@ -1021,6 +1030,9 @@
"Delete attachment \"%s\"?": [
"Slet venhæftning \"%s\"?"
],
"Delete column": [
"Slet kolonne"
],
"Delete expired sessions": [
"Slet udløbne sessioner"
],
@@ -1048,9 +1060,15 @@
"Delete profile \"%s\"": [
"Slet profilen \"%s\""
],
"Delete row": [
"Slet række"
],
"Delete selected notes": [
"Slet valgte noter"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Slet indbakke notesbogen?\n\nHvis du sletter indbakke-notesbogen, kan e-mails, der for nylig er blevet sendt til den, gå tabt."
],
@@ -1156,6 +1174,9 @@
"Displays the complete information about note.": [
"Viser komplet information om note."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Viser valgt note."
],
@@ -1181,7 +1202,7 @@
"Glem ikke adgangkoden, da den af sikkerhedshensyn er den *eneste* mulighed for dekryptering af data! For at aktivere kryptering til, skal du indtaste din adgangskode herunder."
],
"Do you find the Joplin web app useful?": [
""
"Synes du, at Joplin-webappen er nyttig?"
],
"Document scanner: Title template": [
"Dokumentscanner: Skabelon til titel"
@@ -1540,6 +1561,9 @@
"Expand all notebooks": [
"Udvid alle notesbøger"
],
"Expand title": [
"Udvid titel"
],
"Expanded": [
"Udvidet"
],
@@ -1604,7 +1628,7 @@
"Feature-markeringer"
],
"Feedback": [
""
"Feedback"
],
"Fetched items: %d/%d.": [
"Hentede emner: %d/%d."
@@ -2018,6 +2042,9 @@
"Joplin Server": [
"Joplin server"
],
"Joplin Server (SAML)": [
"Joplin Server (SAML)"
],
"Joplin Server Business": [
"Joplin Server Business"
],
@@ -2037,7 +2064,7 @@
"Joplin SSO-godkendelse"
],
"Joplin supports saving the location at which notes are saved or created. Do you want to enable it? This can be changed at any time in settings.": [
""
"Joplin understøtter muligheden for at gemme den placering, hvor noter gemmes eller oprettes. Vil du aktivere denne funktion? Dette kan ændres når som helst i indstillingerne."
],
"Joplin Web Clipper allows saving web pages and screenshots from your browser to Joplin.": [
"Joplin Web-Clipper gør at du kan gemme hjemmesider og screenshots fra din browser i Joplin."
@@ -2066,11 +2093,14 @@
"Keychain Supported: %s": [
"Keychain-understøttet: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Nøgler der har brug for opgradering"
],
"Label": [
""
"Etikette"
],
"Landscape": [
"Landskab"
@@ -2212,6 +2242,9 @@
"Manage your plugins": [
"Administrer dine udvidelser"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Administrer E2EE-konfiguration. Kommandoer er `enable`(aktiver), `disable`(sluk), `decrypt`(dekrypter), `status`, `decrypt-file`(dekrypter fil) og `target-status` (modtager-status)."
],
@@ -2227,6 +2260,9 @@
"Markdown editor": [
"Markdown-editor"
],
"Markdown editor: Highlight active line": [
"Markdown-editor: Fremhæv aktiv linje"
],
"Markdown editor: Render images": [
"Markdown-editor: Gengiv billeder"
],
@@ -2465,6 +2501,9 @@
"No updates available": [
"Ingen opdatering tilgængelig"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Ingen"
],
@@ -2487,7 +2526,7 @@
"Ikke nu"
],
"Not useful": [
""
"Ikke nyttig"
],
"note": [
"note"
@@ -2537,6 +2576,9 @@
"Note list style": [
"Notatliste-stil"
],
"Note not published: %s": [
"Note ikke offentliggjort: %s"
],
"Note preview": [
"Note-forhåndsvisning"
],
@@ -2672,6 +2714,9 @@
"Open Sync Wizard...": [
"Open Synk-hjælper..."
],
"Open-source licences": [
""
],
"Open...": [
"Åbn..."
],
@@ -2693,11 +2738,14 @@
"Options": [
"Indstillinger"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Sorteret liste"
],
"Other": [
""
"Andre"
],
"Other applications...": [
"Andre applikationer..."
@@ -2949,6 +2997,9 @@
"Publish Note": [
"Publicer note"
],
"Publish note \"%s\" (in notebook \"%s\")?": [
"Udgiv note \"%s\" (i notesbogen \"%s\")?"
],
"Publish note...": [
"Publicer note..."
],
@@ -2961,8 +3012,11 @@
"Publish/unpublish": [
"Publicer/afpublicer"
],
"Published at URL: %s": [
"Offentliggjort på URL: %s"
],
"Publishes a note to Joplin Server or Joplin Cloud": [
""
"Offentliggør en note til Joplin Server eller Joplin Cloud"
],
"QR Code": [
"QR-kode"
@@ -3009,6 +3063,9 @@
"Recipients:": [
"Modtagere:"
],
"Recognise text:": [
"Genkend tekst:"
],
"Recognize handwritten image": [
"Genkend håndskrevet billede"
],
@@ -3237,6 +3294,9 @@
"Save geo-location with notes": [
"Gem geo-lokation i noter"
],
"Save geolocation?": [
"Gem geo-lokation?"
],
"Scan notebook": [
"Scan notesbog"
],
@@ -3307,11 +3367,14 @@
"Vælg notesbog"
],
"Select one of the other supported sync targets.": [
""
"Vælg et af de andre understøttede synkroniseringsmål."
],
"Select parent notebook": [
"Vælg overordnet notesbog"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Valgte: %s"
],
@@ -3516,6 +3579,9 @@
"Source: ": [
"Kilde: "
],
"SPACE": [
""
],
"Spacer": [
"Mellemrum"
],
@@ -3646,7 +3712,7 @@
"Skifter til [notebook] - alle fremtidige handlinger sker i denne notesbog."
],
"Sync": [
""
"Synk"
],
"Sync as many devices as you want": [
"Synkroniser så mange enheder, du vil"
@@ -3726,6 +3792,9 @@
"Take photo": [
"Tag et foto"
],
"Take survey": [
"Deltag i undersøgelse"
],
"Task \"%s\" failed with error: %s": [
"Afstandsstykke"
],
@@ -3745,7 +3814,7 @@
"Tekstredigeringskomando"
],
"Thank you for the feedback!\nDo you have time to complete a short survey?": [
""
"Tak for din feedback!\nHar du tid til at udfylde en kort undersøgelse?"
],
"The active profile cannot be deleted. Switch to a different profile and try again.": [
"Den aktive profil kan ikke slettes. Skift til en anden profil, og prøv igen."
@@ -3820,9 +3889,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Noten \"%s\" er blevet gendannet til notesbogen \"%s\"."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Noten er blevet konverteret til Markdown, og den oprindelige note er blevet flyttet til papirkurven."
],
"The note was successfully moved to the trash.": [
"Noten blev flyttet til papirkurven.",
"Noter blev flyttet til papirkurven."
@@ -4124,6 +4190,9 @@
"Try it now": [
"Prøv det nu"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Tast `help [kommando]` for mere info om en kommando; eller tast `help all` for fuld brugsinformation."
],
@@ -4145,6 +4214,9 @@
"Unable to share log data. Reason: %s": [
"Kan ikke dele logdata. Årsag: %s"
],
"Unable to share note data. Reason: %s": [
"Kan ikke dele notedata. Årsag: %s"
],
"Unchecked": [
"Ikke markeret"
],
@@ -4290,7 +4362,7 @@
"Bruges hvor en font med fast bredde er nødvendig for at vise læsbar tekst (f.eks. tabeller, afkrydsningsfelter, kode). Hvis ikke fundet, bruges en generisk monospatieret (fast bredde) font."
],
"Useful": [
""
"Nyttig"
],
"User deletions": [
"Brugersletninger"
@@ -4398,7 +4470,7 @@
"Ved oprettelse af ny opgave:"
],
"When enabled, requests that the images in the note be transcribed with a higher-quality on-server transcription service. Requires sync with a copy of the desktop app.": [
""
"Når denne funktion er aktiveret, anmodes der om, at billederne i noten transskriberes med en transskriptionstjeneste på serveren, der leverer højere kvalitet. Kræver synkronisering med en kopi af desktop-appen."
],
"When enabled, the application will scan your attachments and extract the text from it. This will allow you to search for text in these attachments.": [
"Når det er aktiveret, vil applikationen scanne dine vedhæftede filer og udtrække teksten fra dem. Dette giver dig mulighed for at søge efter tekst i disse vedhæftede filer."

View File

@@ -27,7 +27,7 @@
"%d Minuten"
],
"%d note matches this pattern. Delete it?": [
"%d Notize stimmt mit diesem Muster überein. Löschen?",
"%d Notiz stimmt mit diesem Muster überein. Löschen?",
"%d Notizen stimmen mit diesem Muster überein. Löschen?"
],
"%d note will be permanently deleted. Continue?": [
@@ -168,7 +168,7 @@
"[Nichts]"
],
"A brief description of the image:": [
""
"Eine kurze Beschreibung des Bildes:"
],
"A comma-separated list of words. May be used for uncommon words, to help voice typing spell them correctly.": [
"Eine kommagetrennte Liste von Wörtern. Kann für ungewöhnliche Wörter verwendet werden, um die korrekte Schreibweise bei der Sprachsteuerung zu unterstützen."
@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Über"
],
@@ -243,7 +246,7 @@
"Text hinzufügen"
],
"Add column": [
""
"Spalte hinzufügen"
],
"Add new": [
"Neu hinzufügen"
@@ -254,6 +257,9 @@
"Add recipient:": [
"Füge Empfänger hinzu:"
],
"Add row": [
"Zeile hinzufügen"
],
"Add tags:": [
"Schlagwörter hinzufügen:"
],
@@ -342,7 +348,7 @@
"Es wurde eine automatisch gespeicherte Zeichnung gefunden. Eine Kopie davon an die Notiz anhängen?"
],
"An error occurred while sending the response. This can happen if the app is offline or cannot connect to the server.\nError: %s": [
""
"Beim Senden der Antwort ist ein Fehler aufgetreten. Dies kann passieren, wenn die App offline ist oder keine Verbindung zum Server herstellen kann.\nFehler: %s"
],
"An error occurred: %s": [
"Ein Fehler trat auf: %s"
@@ -467,6 +473,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Fett"
],
@@ -605,6 +614,9 @@
"Checking... Please wait.": [
"Überprüfen… Bitte warten."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Wähle eine Option"
],
@@ -671,9 +683,6 @@
"Code View": [
"Code-Ansicht"
],
"Code:": [
"Code:"
],
"Collaborate on a notebook with others": [
"Gemeinsam mit anderen an einem Notizbuch arbeiten"
],
@@ -683,6 +692,9 @@
"Collapse all notebooks": [
"Alle Notizbücher einklappen"
],
"Collapse title": [
"Titel einklappen"
],
"Collapsed": [
"Eingeklappt"
],
@@ -698,6 +710,9 @@
"Command": [
"Befehl"
],
"COMMAND": [
""
],
"Command palette": [
"Befehlspalette"
],
@@ -786,9 +801,6 @@
"Convert it": [
"Umwandeln"
],
"Convert note to Markdown": [
"Notiz in Markdown umwandeln"
],
"Convert to note": [
"In eine Notiz umwandeln"
],
@@ -839,14 +851,11 @@
"Konnte die Anwendung nicht autorisieren:\n\n%s\n\nBitte versuche es erneut."
],
"Could not connect to Joplin Server. Please check the Synchronisation options in the config screen. Full error was:\n\n%s": [
"Es konnte keine Verbindung zum Joplin-Server hergestellt werden. Bitte überprüfe die Synchronisationsoptionen im Konfigurationsmenü. Vollständiger Fehler:\n\n%s"
"Es konnte keine Verbindung zu Joplin Server hergestellt werden. Bitte überprüfe die Synchronisationsoptionen im Konfigurationsmenü. Vollständiger Fehler:\n\n%s"
],
"Could not connect to plugin repository.": [
"Konnte keine Verbindung zum Plugin-Repository herstellen."
],
"Could not convert note to Markdown: %s": [
"Konnte Notiz nicht in Markdown umwandeln: %s"
],
"Could not export notes: %s": [
"Konnte Notizen nicht exportieren: %s"
],
@@ -1021,6 +1030,9 @@
"Delete attachment \"%s\"?": [
"Anhang „%s“ löschen?"
],
"Delete column": [
"Spalte löschen"
],
"Delete expired sessions": [
"Lösche abgelaufene Sitzungen"
],
@@ -1048,9 +1060,15 @@
"Delete profile \"%s\"": [
"Lösche Profil „%s“"
],
"Delete row": [
"Zeile löschen"
],
"Delete selected notes": [
"Ausgewählte Notizen löschen"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Das Inbox-Notizbuch löschen?\n\nWenn du das Inbox-Notizbuch löschst, gehen kürzlich dort eingegangene Emails möglicherweise verloren."
],
@@ -1156,6 +1174,9 @@
"Displays the complete information about note.": [
"Zeigt alle Informationen über die Notiz an."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Zeigt die angegebene Notiz an."
],
@@ -1181,7 +1202,7 @@
"Achte darauf, dass du das Passwort nicht verlierst, da dies aus Sicherheitsgründen die *einzige* Möglichkeit ist, deine Daten zu entschlüsseln! Um die Verschlüsselung zu aktivieren, gib bitte unten dein Passwort ein."
],
"Do you find the Joplin web app useful?": [
""
"Findest du die Joplin-Webanwendung nützlich?"
],
"Document scanner: Title template": [
"Dokumentenscanner: Titelvorlage"
@@ -1253,7 +1274,7 @@
"Duplizieren"
],
"Duplicate line": [
"Dupliziere Zeile"
"Zeile duplizieren"
],
"Duplicate selected notes": [
"Ausgewählte Notizen duplizieren"
@@ -1367,7 +1388,7 @@
"Verschlüsselung aktivieren"
],
"Enable file:// URLs for images and videos": [
"Aktiviere file://-URLs für Bilder und Videos"
"URLs mit file:// für Bilder und Videos aktivieren"
],
"Enable footnotes": [
"Fußnoten aktivieren"
@@ -1376,10 +1397,10 @@
"Fountain-Syntaxunterstützung aktivieren"
],
"Enable handwritten transcription": [
"Handschriftumwandlung aktivieren"
"Handschrifttranskription aktivieren"
],
"Enable HTML-to-Markdown conversion banner": [
"Umwandlungsbanner für HTML zu Markdown aktivieren"
"Banner für Umwandlung von HTML zu Markdown aktivieren"
],
"Enable Linkify": [
"Linkify aktivieren"
@@ -1540,6 +1561,9 @@
"Expand all notebooks": [
"Alle Notizbücher ausklappen"
],
"Expand title": [
"Titel ausklappen"
],
"Expanded": [
"Ausgeklappt"
],
@@ -1604,7 +1628,7 @@
"Funktionsargumente"
],
"Feedback": [
""
"Feedback"
],
"Fetched items: %d/%d.": [
"Geladene Elemente: %d/%d."
@@ -2018,6 +2042,9 @@
"Joplin Server": [
"Joplin Server"
],
"Joplin Server (SAML)": [
"Joplin Server (SAML)"
],
"Joplin Server Business": [
"Joplin Server Business"
],
@@ -2037,7 +2064,7 @@
"Joplin SSO-Authentifizierung"
],
"Joplin supports saving the location at which notes are saved or created. Do you want to enable it? This can be changed at any time in settings.": [
""
"Joplin unterstützt das Speichern des Standortes, an dem Notizen gespeichert oder erstellt werden. Möchtest du das aktivieren? Dies kann jederzeit in den Einstellungen geändert werden."
],
"Joplin Web Clipper allows saving web pages and screenshots from your browser to Joplin.": [
"Joplin Web Clipper ermöglicht das Speichern von Webseiten und Screenshots aus deinem Browser in Joplin."
@@ -2046,7 +2073,7 @@
"Joplin Webseite"
],
"Joplin's own sync service. Also gives access to Joplin-specific features such as publishing notes or collaborating on notebooks with others.": [
"Joplins eigener Synchronisationsdienst. Ermöglicht auch den Zugriff auf Joplin-spezifische Funktionen wie das Veröffentlichen von Notizen oder die Zusammenarbeit an Notizbüchern mit anderen."
"Joplins eigener Synchronisationsdienst. Ermöglicht auch den Zugriff auf joplinspezifische Funktionen wie das Veröffentlichen von Notizen oder die Zusammenarbeit an Notizbüchern mit anderen."
],
"Keep note history for": [
"Notizenverlauf speichern für"
@@ -2066,11 +2093,14 @@
"Keychain Supported: %s": [
"Unterstützter Schlüsselbund: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Hauptschlüssel, die aktualisiert werden müssen"
],
"Label": [
""
"Beschriftung"
],
"Landscape": [
"Querformat"
@@ -2212,6 +2242,9 @@
"Manage your plugins": [
"Erweiterungen verwalten"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Verwaltet die E2EE-Konfiguration. Die Befehle lauten `enable`, `disable`, `decrypt`, `status`, `decrypt-file` und `target-status`."
],
@@ -2227,11 +2260,14 @@
"Markdown editor": [
"Markdown-Editor"
],
"Markdown editor: Highlight active line": [
"Markdown-Editor: Aktive Zeile hervorheben"
],
"Markdown editor: Render images": [
"Markdown-Editor: Bilder darstellen"
],
"Markdown editor: Render markup in editor": [
"Markdown-Editor: Auszeichnungen im Editor darstellen"
"Markdown-Editor: Markup im Editor darstellen"
],
"Marks a to-do as done.": [
"Markiert eine Aufgabe als erledigt."
@@ -2465,6 +2501,9 @@
"No updates available": [
"Keine Updates verfügbar"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Nichts"
],
@@ -2487,7 +2526,7 @@
"Nicht jetzt"
],
"Not useful": [
""
"Nicht nützlich"
],
"note": [
"Notiz"
@@ -2537,6 +2576,9 @@
"Note list style": [
"Stil der Notiz-Liste"
],
"Note not published: %s": [
"Notiz nicht veröffentlicht: %s"
],
"Note preview": [
"Notizvorschau"
],
@@ -2672,6 +2714,9 @@
"Open Sync Wizard...": [
"Sync-Assistent öffnen..."
],
"Open-source licences": [
""
],
"Open...": [
"Öffnen..."
],
@@ -2693,11 +2738,14 @@
"Options": [
"Optionen"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Geordnete Liste"
],
"Other": [
""
"Andere"
],
"Other applications...": [
"Andere Anwendungen..."
@@ -2949,6 +2997,9 @@
"Publish Note": [
"Notiz veröffentlichen"
],
"Publish note \"%s\" (in notebook \"%s\")?": [
"Notiz \"%s\" (im Notizbuch \"%s\") veröffentlichen?"
],
"Publish note...": [
"Notiz veröffentlichen..."
],
@@ -2961,8 +3012,11 @@
"Publish/unpublish": [
"Veröffentlichen / nicht veröffentlichen"
],
"Published at URL: %s": [
"Veröffentlicht unter URL: %s"
],
"Publishes a note to Joplin Server or Joplin Cloud": [
""
"Veröffentlicht eine Notiz auf Joplin Server oder Joplin Cloud"
],
"QR Code": [
"QR-Code"
@@ -3009,6 +3063,9 @@
"Recipients:": [
"Empfänger:"
],
"Recognise text:": [
"Text erkennen:"
],
"Recognize handwritten image": [
"Handschrift-Bild erkennen"
],
@@ -3076,7 +3133,7 @@
"Benennt das angegebene <item> (Notiz oder Notizbuch) zu <name> um."
],
"Renders markup on all lines that don't include the cursor.": [
"Stellt Auszeichnungen in allen Zeilen dar, die den Cursor nicht enthalten."
"Rendert Markup in allen Zeilen, die den Cursor nicht enthalten."
],
"Renew token": [
"Token erneuern"
@@ -3237,6 +3294,9 @@
"Save geo-location with notes": [
"Geografischen Standort zusammen mit Notizen speichern"
],
"Save geolocation?": [
"Geografischen Standort speichern?"
],
"Scan notebook": [
"Notizbuch scannen"
],
@@ -3307,11 +3367,14 @@
"Notizbuch auswählen"
],
"Select one of the other supported sync targets.": [
""
"Wähle eines der anderen unterstützten Synchronisationsziele."
],
"Select parent notebook": [
"Eltern-Notizbuch auswählen"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Ausgewählt: %s"
],
@@ -3346,7 +3409,7 @@
"Setze auf 0 um den gesamten verfügbaren Platz zu verwenden. Die empfohlene Breite ist 600."
],
"Set the password": [
"Gib das Passwort ein"
"Passwort festlegen"
],
"Sets the property <name> of the given <note> to the given [value]. Possible properties are:\n\n%s": [
"Setzt die Eigenschaft <name> der gegebenen <note> auf den gegebenen [Wert]. Mögliche Werte sind:\n\n%s"
@@ -3358,10 +3421,10 @@
"Freigeben"
],
"Share a copy of all notes in a file format that can be imported by Joplin on a computer.": [
"Teile eine Kopie aller Notizen in einem Dateiformat, welches von Joplin auf einem anderen Computer importiert werden kann."
"Gib eine Kopie aller Notizen in einem Dateiformat frei, welches von Joplin auf einem Computer importiert werden kann."
],
"Share a notebook with others": [
"Teile ein Notizbuch mit anderen"
"Gib ein Notizbuch für andere frei"
],
"Share from %s (%s)": [
"Freigeben von %s (%s)"
@@ -3385,7 +3448,7 @@
"Gibt das angegebene [Notizbuch] für [Benutzer] frei oder hebt diese Freigabe auf. Erfordert Joplin Cloud oder Joplin Server."
],
"Sharing notebook...": [
"Notizbuch teilen..."
"Notizbuch freigeben..."
],
"Shortcuts are not available in CLI mode.": [
"Tastenkürzel sind im CLI-Modus nicht verfügbar."
@@ -3496,7 +3559,7 @@
"Notizbücher sortieren nach"
],
"Sort notes by": [
"Sortiere Notizen nach"
"Notizen sortieren nach"
],
"Sort selected lines": [
"Ausgewählte Zeilen sortieren"
@@ -3516,6 +3579,9 @@
"Source: ": [
"Quelle: "
],
"SPACE": [
""
],
"Spacer": [
"Abstandhalter"
],
@@ -3646,7 +3712,7 @@
"Wechselt zu [notebook] - alle weiteren Aktionen werden in diesem Notizbuch ausgeführt."
],
"Sync": [
""
"Synchronisieren"
],
"Sync as many devices as you want": [
"Synchronisiere mit beliebig vielen Geräten"
@@ -3726,6 +3792,9 @@
"Take photo": [
"Foto aufnehmen"
],
"Take survey": [
"An Umfrage teilnehmen"
],
"Task \"%s\" failed with error: %s": [
"Aufgabe \"%s\" fehlgeschlagen mit Fehler: %s"
],
@@ -3745,7 +3814,7 @@
"Texteditor-Befehl"
],
"Thank you for the feedback!\nDo you have time to complete a short survey?": [
""
"Danke für das Feedback!\nHast du Zeit, eine kurze Umfrage auszufüllen?"
],
"The active profile cannot be deleted. Switch to a different profile and try again.": [
"Das aktive Profil kann nicht gelöscht werden. Bitte wechsle in ein anderes Profil und versuche es erneut."
@@ -3820,9 +3889,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Die Notiz „%s“ wurde erfolgreich im Notizbuch „%s“ wiederhergestellt."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Die Notiz wurde in Markdown umgewandelt und die Originalnotiz in den Papierkorb verschoben"
],
"The note was successfully moved to the trash.": [
"Die Notiz wurde erfolgreich in den Papierkorb verschoben.",
"Die Notizen wurden erfolgreich in den Papierkorb verschoben."
@@ -3927,7 +3993,7 @@
"Diese Zeichnung kann ungespeicherte Änderungen enthalten."
],
"This feature is disabled by default, you need to manually enable it by turning on the option to 'Enable handwritten transcription'.": [
"Diese Funktion ist per Voreinstellung deaktiviert. Du musst sie manuell aktivieren, indem du die Option ‚Handschriftumwandlung aktivieren‘ einschaltest."
"Diese Funktion ist per Voreinstellung deaktiviert. Du musst sie manuell aktivieren, indem du die Option ‚Handschrifttranskription aktivieren‘ einschaltest."
],
"This feature is only available on Joplin Cloud and Joplin Server.": [
"Diese Funktion ist nur verfügbar in Joplin Cloud und Joplin Server."
@@ -4124,6 +4190,9 @@
"Try it now": [
"Jetzt testen"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Tippe `help [Befehl]`, um weitere Informationen über einen Befehl zu erhalten oder tippe `help all` für die vollständigen Hinweise zur Nutzung des Befehls."
],
@@ -4145,6 +4214,9 @@
"Unable to share log data. Reason: %s": [
"Protokolldaten können nicht geteilt werden. Grund: %s"
],
"Unable to share note data. Reason: %s": [
"Notizdaten können nicht geteilt werden. Grund: %s"
],
"Unchecked": [
"Nicht angehakt"
],
@@ -4155,7 +4227,7 @@
"Rückgängig"
],
"Uninstall and reinstall the application. Make sure you create a backup first by exporting all your notes as JEX from the desktop application.": [
"Deinstalliere die Anwendung und installieren sie dann neu. Stelle sicher, dass du zuerst ein Backup erstellst, indem du alle Notizen als JEX aus der Desktop-Anwendung exportierst."
"Deinstalliere die Anwendung und installiere sie erneut. Erstelle zuvor unbedingt ein Backup, indem du alle deine Notizen aus der Desktop-Anwendung als JEX exportierst."
],
"Unknown": [
"Unbekannt"
@@ -4176,13 +4248,13 @@
"Ungeordnete Liste"
],
"Unpublish": [
"Nicht veröffentlichen"
"Nicht mehr veröffentlichen"
],
"Unpublish \"%s\"": [
"„%s“ nicht veröffentlichen"
"„%s“ nicht mehr veröffentlichen"
],
"Unpublish note": [
"Notiz nicht veröffentlichen"
"Notiz nicht mehr veröffentlichen"
],
"Unshare": [
"Nicht mehr freigeben"
@@ -4290,7 +4362,7 @@
"Verwendete Schriftart mit fester Breite, um Text lesbar zu machen (z.B. in Tabellen, Kontrollkästchen, Code). Falls nicht vorhanden wird eine Monotype-Scrhiftart (mit fester Breite) verwendet."
],
"Useful": [
""
"Nützlich"
],
"User deletions": [
"Benutzer-Löschungen"
@@ -4398,7 +4470,7 @@
"Beim Erstellen einer neuen Aufgabe:"
],
"When enabled, requests that the images in the note be transcribed with a higher-quality on-server transcription service. Requires sync with a copy of the desktop app.": [
""
"Wenn aktiviert, werden die Bilder in der Notiz mit einem qualitativ höherwertigen serverseitigen Transkriptionsdienst umgewandelt. Erfordert die Synchronisation mit einer Kopie der Desktop-App."
],
"When enabled, the application will scan your attachments and extract the text from it. This will allow you to search for text in these attachments.": [
"Wenn aktiviert, wird die Anwendung deine Anhänge einlesen und Text aus ihnen extrahieren. Damit kannst du innerhalb dieser Anhänge nach Text suchen."

File diff suppressed because it is too large Load Diff

View File

@@ -185,6 +185,9 @@
"A5": [
""
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -470,6 +473,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
""
],
@@ -524,6 +530,9 @@
"Cannot change encrypted item": [
""
],
"Cannot convert read-only item: \"%s\"": [
""
],
"Cannot copy note to \"%s\" notebook": [
""
],
@@ -608,6 +617,9 @@
"Checking... Please wait.": [
""
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
""
],
@@ -674,9 +686,6 @@
"Code View": [
""
],
"Code:": [
""
],
"Collaborate on a notebook with others": [
""
],
@@ -704,6 +713,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -743,6 +755,9 @@
"Configuration": [
""
],
"Configured keyboard shortcuts:": [
""
],
"Configures the size of scrollbars used in the app.": [
""
],
@@ -792,7 +807,7 @@
"Convert it": [
""
],
"Convert note to Markdown": [
"Convert to Markdown": [
""
],
"Convert to note": [
@@ -850,7 +865,7 @@
"Could not connect to plugin repository.": [
""
],
"Could not convert note to Markdown: %s": [
"Could not convert notes to Markdown: %s": [
""
],
"Could not export notes: %s": [
@@ -1057,12 +1072,18 @@
"Delete profile \"%s\"": [
""
],
"Delete profile \"%s\"?\n\nAll data, including notes, notebooks and tags will be permanently deleted.": [
""
],
"Delete row": [
""
],
"Delete selected notes": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -1168,6 +1189,9 @@
"Displays the complete information about note.": [
""
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
""
],
@@ -1300,6 +1324,9 @@
"Edit profile configuration...": [
""
],
"Edit tag": [
""
],
"Editor": [
""
],
@@ -1366,6 +1393,9 @@
"Enable abbreviation syntax": [
""
],
"Enable ABC musical notation support": [
""
],
"Enable audio player": [
""
],
@@ -1859,6 +1889,9 @@
"Import or export your data": [
""
],
"Import...": [
""
],
"Imported successfully!": [
""
],
@@ -2084,6 +2117,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -2230,6 +2266,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
""
],
@@ -2336,6 +2375,9 @@
"",
""
],
"Move %d notebooks to the trash?\n\nAll notes and sub-notebooks within these notebooks will also be moved to the trash.": [
""
],
"Move down": [
""
],
@@ -2486,6 +2528,9 @@
"No updates available": [
""
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -2696,6 +2741,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
""
],
@@ -2717,6 +2765,9 @@
"Options": [
""
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
""
],
@@ -2946,6 +2997,9 @@
"Profile name": [
""
],
"Profile name cannot be empty": [
""
],
"Profile name:": [
""
],
@@ -3078,6 +3132,9 @@
"Remove": [
""
],
"Remove %d tags from all notes? This cannot be undone.": [
""
],
"Remove %s": [
""
],
@@ -3348,6 +3405,9 @@
"Select parent notebook": [
""
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
""
],
@@ -3552,6 +3612,9 @@
"Source: ": [
""
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3750,9 +3813,15 @@
"Tab moves focus": [
""
],
"Table": [
""
],
"Tabloid": [
""
],
"Tag: %s": [
""
],
"Tagged: %d.": [
""
],
@@ -3860,6 +3929,7 @@
""
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"",
""
],
"The note was successfully moved to the trash.": [
@@ -4163,6 +4233,9 @@
"Try it now": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
""
],

View File

@@ -185,6 +185,9 @@
"A5": [
""
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -458,6 +461,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
""
],
@@ -512,6 +518,9 @@
"Cannot change encrypted item": [
""
],
"Cannot convert read-only item: \"%s\"": [
""
],
"Cannot copy note to \"%s\" notebook": [
""
],
@@ -596,6 +605,9 @@
"Checking... Please wait.": [
""
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
""
],
@@ -662,9 +674,6 @@
"Code View": [
""
],
"Code:": [
""
],
"Collaborate on a notebook with others": [
""
],
@@ -692,6 +701,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -731,6 +743,9 @@
"Configuration": [
""
],
"Configured keyboard shortcuts:": [
""
],
"Configures the size of scrollbars used in the app.": [
""
],
@@ -780,7 +795,7 @@
"Convert it": [
""
],
"Convert note to Markdown": [
"Convert to Markdown": [
""
],
"Convert to note": [
@@ -838,7 +853,7 @@
"Could not connect to plugin repository.": [
""
],
"Could not convert note to Markdown: %s": [
"Could not convert notes to Markdown: %s": [
""
],
"Could not export notes: %s": [
@@ -1045,12 +1060,18 @@
"Delete profile \"%s\"": [
""
],
"Delete profile \"%s\"?\n\nAll data, including notes, notebooks and tags will be permanently deleted.": [
""
],
"Delete row": [
""
],
"Delete selected notes": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -1153,6 +1174,9 @@
"Displays the complete information about note.": [
""
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
""
],
@@ -1285,6 +1309,9 @@
"Edit profile configuration...": [
""
],
"Edit tag": [
""
],
"Editor": [
""
],
@@ -1351,6 +1378,9 @@
"Enable abbreviation syntax": [
""
],
"Enable ABC musical notation support": [
""
],
"Enable audio player": [
""
],
@@ -1841,6 +1871,9 @@
"Import or export your data": [
""
],
"Import...": [
""
],
"Imported successfully!": [
""
],
@@ -2063,6 +2096,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -2209,6 +2245,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
""
],
@@ -2315,6 +2354,9 @@
"",
""
],
"Move %d notebooks to the trash?\n\nAll notes and sub-notebooks within these notebooks will also be moved to the trash.": [
""
],
"Move down": [
""
],
@@ -2465,6 +2507,9 @@
"No updates available": [
""
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -2672,6 +2717,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
""
],
@@ -2693,6 +2741,9 @@
"Options": [
""
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
""
],
@@ -3318,6 +3369,9 @@
"Select parent notebook": [
""
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
""
],
@@ -3519,6 +3573,9 @@
"Source: ": [
""
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3717,9 +3774,15 @@
"Tab moves focus": [
""
],
"Table": [
""
],
"Tabloid": [
""
],
"Tag: %s": [
""
],
"Tagged: %d.": [
""
],
@@ -3827,6 +3890,7 @@
""
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"",
""
],
"The note was successfully moved to the trash.": [
@@ -4121,6 +4185,9 @@
"Try it now": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
""
],

View File

@@ -132,6 +132,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -354,6 +357,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Grasa"
],
@@ -462,6 +468,9 @@
"Checking... Please wait.": [
"Kontrolante... Atendu."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Elekti opcion"
],
@@ -525,6 +534,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -549,6 +561,9 @@
"Configuration": [
"Agordoj"
],
"Configured keyboard shortcuts:": [
""
],
"Configures the size of scrollbars used in the app.": [
""
],
@@ -735,6 +750,9 @@
"Delete local data and re-download from sync target": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -816,6 +834,9 @@
"Displays the complete information about note.": [
""
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
""
],
@@ -1512,6 +1533,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -1603,6 +1627,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
""
],
@@ -1777,6 +1804,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
""
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -1897,6 +1927,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
"Malfermi..."
],
@@ -1909,6 +1942,9 @@
"Options": [
"Opcioj"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2338,6 +2374,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2482,6 +2521,9 @@
"Source format: %s": [
"Fonta aranĝo: %s"
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -2748,6 +2790,7 @@
""
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"",
""
],
"The note was successfully moved to the trash.": [
@@ -2984,6 +3027,9 @@
"Try again": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
""
],

View File

@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Acerca de"
],
@@ -470,6 +473,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Negrita"
],
@@ -608,6 +614,9 @@
"Checking... Please wait.": [
"Comprobando... Por favor espere."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Seleccione una opción"
],
@@ -674,9 +683,6 @@
"Code View": [
"Vista de código"
],
"Code:": [
"Código:"
],
"Collaborate on a notebook with others": [
"Colaborar en una libreta con otros usuarios"
],
@@ -704,6 +710,9 @@
"Command": [
"Comando"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta de comandos"
],
@@ -792,9 +801,6 @@
"Convert it": [
"Conviértelo"
],
"Convert note to Markdown": [
"Convertir nota a Markdown"
],
"Convert to note": [
"Convertir en nota"
],
@@ -850,9 +856,6 @@
"Could not connect to plugin repository.": [
"No se ha podido conectar con el repositorio de plugins."
],
"Could not convert note to Markdown: %s": [
"No se pudo convertir la nota a Markdown: %s"
],
"Could not export notes: %s": [
"No se pudo exportar las notas: %s"
],
@@ -1063,6 +1066,9 @@
"Delete selected notes": [
"Borrar notas seleccionadas"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"¿Eliminar la libreta de la bandeja de entrada?\n\nSi eliminas la libreta de la bandeja de entrada, es posible que se pierda cualquier correo electrónico que se haya enviado recientemente."
],
@@ -1168,6 +1174,9 @@
"Displays the complete information about note.": [
"Mostrar la información completa acerca de la nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Muestra la nota dada."
],
@@ -2084,6 +2093,9 @@
"Keychain Supported: %s": [
"Llavero Soportado: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Claves que necesitan actualizarse"
],
@@ -2230,6 +2242,9 @@
"Manage your plugins": [
"Gestione sus plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Administra la configuración E2EE. Los comandos son `enable`, `disable`, `decrypt`, `status`, `decrypt-file` y `target-status`."
],
@@ -2486,6 +2501,9 @@
"No updates available": [
"No hay actualizaciones disponibles"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Ninguno"
],
@@ -2696,6 +2714,9 @@
"Open Sync Wizard...": [
"Abrir el asistente de sincronización..."
],
"Open-source licences": [
""
],
"Open...": [
"Abrir..."
],
@@ -2717,6 +2738,9 @@
"Options": [
"Opciones"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista ordenada"
],
@@ -3348,6 +3372,9 @@
"Select parent notebook": [
"Seleccionar libreta principal"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Seleccionado: %s"
],
@@ -3552,6 +3579,9 @@
"Source: ": [
"Origen: "
],
"SPACE": [
""
],
"Spacer": [
"Espaciador"
],
@@ -3859,9 +3889,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"La nota «%s» se ha restaurado exitosamente a la libreta «%s»."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"La nota se ha convertido a Markdown y la nota original se ha movido a la papelera"
],
"The note was successfully moved to the trash.": [
"La nota se movió con éxito a la papelera.",
"Las notas se movieron con éxito a la papelera."
@@ -4163,6 +4190,9 @@
"Try it now": [
"Intentar ahora"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Escriba `help [command]` para obtener más información sobre el comando o escriba `help all` para obtener toda la información acerca del uso del programa."
],

View File

@@ -125,6 +125,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -338,6 +341,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Paks"
],
@@ -431,6 +437,9 @@
"Checking... Please wait.": [
"Kontroll... Oota."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Valida suvand"
],
@@ -482,6 +491,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -678,6 +690,9 @@
"Delete local data and re-download from sync target": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -747,6 +762,9 @@
"Displays the complete information about note.": [
"Kuvatakse märkme kohta täielik teave."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Kuvab antud märkme."
],
@@ -1306,6 +1324,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -1385,6 +1406,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manual": [
"Manuaal"
],
@@ -1532,6 +1556,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Tekstiredaktorit pole määratletud. Seadistage see kasutades konfiguratsiooniredaktorit <editor-path>"
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -1640,6 +1667,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
"Avatud..."
],
@@ -1652,6 +1682,9 @@
"Options": [
"Valikud"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2045,6 +2078,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2174,6 +2210,9 @@
"Source format: %s": [
"Allika Formaat: %s"
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -2562,6 +2601,9 @@
"Try again": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Käsu kohta lisateabe saamiseks tippige käsk `help [command]`; või tippige täieliku kasutamise teabe saamiseks `help all`."
],

View File

@@ -120,6 +120,9 @@
"A5": [
""
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -330,6 +333,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
""
],
@@ -441,6 +447,9 @@
"Checked": [
""
],
"Chinese/Japanese/Korean characters": [
""
],
"Chrome Web Store": [
""
],
@@ -489,9 +498,6 @@
"Code View": [
""
],
"Code:": [
""
],
"Collapsed": [
""
],
@@ -507,6 +513,9 @@
"Command": [
""
],
"COMMAND": [
""
],
"Command palette": [
""
],
@@ -531,6 +540,9 @@
"Configuration": [
"Konfigurazioa"
],
"Configured keyboard shortcuts:": [
""
],
"Configures the size of scrollbars used in the app.": [
""
],
@@ -700,6 +712,9 @@
"Delete local data and re-download from sync target": [
""
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -778,6 +793,9 @@
"Displays the complete information about note.": [
"Erakutsi oharrari buruzko informazio guztia."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Oharra erakutsi"
],
@@ -1405,6 +1423,9 @@
"Keychain Supported: %s": [
""
],
"KEYS": [
""
],
"Keys that need upgrading": [
""
],
@@ -1490,6 +1511,9 @@
"Manage your plugins": [
""
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manual": [
""
],
@@ -1640,6 +1664,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Testu editorerik ez dago definituta. Egin hau erabilita, mesedez: `config editor <editorearen-helbidea>`"
],
"No URL for SAML authentication set.": [
""
],
"None": [
""
],
@@ -1739,6 +1766,9 @@
"Open Sync Wizard...": [
""
],
"Open-source licences": [
""
],
"Open...": [
""
],
@@ -1751,6 +1781,9 @@
"Options": [
"Aukerak"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2153,6 +2186,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2276,6 +2312,9 @@
"Source": [
"Iturburua"
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -2509,6 +2548,7 @@
""
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"",
""
],
"The note was successfully moved to the trash.": [
@@ -2722,6 +2762,9 @@
"Try it now": [
""
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Idatzi `help [command]` komandoari buruzko informazio gehiagorako; edo idatzi `help all` erabilerari buruzko informazio osoa lortzeko."
],

View File

@@ -149,6 +149,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"درباره"
],
@@ -401,6 +404,9 @@
"Beta": [
"بتا"
],
"Block code": [
""
],
"Bold": [
"پررنگ"
],
@@ -530,6 +536,9 @@
"Checking... Please wait.": [
"در حال بررسی... لطفا صبور باشید."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"یک گزینه را انتخاب کنید"
],
@@ -608,6 +617,9 @@
"Command": [
"فرمان"
],
"COMMAND": [
""
],
"Command palette": [
"پالت فرمان"
],
@@ -915,6 +927,9 @@
"Delete selected notes": [
"حذف یادداشت‌های انتخاب شده"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"دفترچه‌ی صندوق ورودی حذف شود؟\n\nاگر دفترچه صندوق ورودی را حذف کنید، ممکن است هر ایمیلی که اخیراً به آن ارسال شده است نیز از بین برود."
],
@@ -1005,6 +1020,9 @@
"Displays the complete information about note.": [
"مشخصات کامل یادداشت را نمایش می‌دهد."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"یادداشت مشخص شده را نمایش بده."
],
@@ -1837,6 +1855,9 @@
"Keychain Supported: %s": [
"Keychain پشتیبانی می‌شود: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"کلید‌ها نیازمند ارتقاء می‌باشند"
],
@@ -1964,6 +1985,9 @@
"Manage your plugins": [
"مدیریت افزونه‌های شما"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"تنظیمات رمزنگاری انتها به انتها (E2EE) را مدیریت می‌کند. دستورات شامل `enable`، `disable`، `decrypt`، `status`، `decrypt-file` و `target-status` هستند."
],
@@ -2168,6 +2192,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"هیچ ویرایشگر متنی مشخص نشده است. لطفا با استفاده از `<editor-path> تنظیمات ویرایشگر` آن را مشخص کنید"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nord"
],
@@ -2339,6 +2366,9 @@
"Open Sync Wizard...": [
"بازکردن راهنمای همگام‌سازی..."
],
"Open-source licences": [
""
],
"Open...": [
"باز کردن..."
],
@@ -2351,6 +2381,9 @@
"Options": [
"گزینه ها"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"لیست مرتب شده"
],
@@ -2885,6 +2918,9 @@
"Select parent notebook": [
"انتخاب دفترچه والد"
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -3062,6 +3098,9 @@
"Source: ": [
"منبع "
],
"SPACE": [
""
],
"Spacer": [
"فاصله‌ساز"
],
@@ -3628,6 +3667,9 @@
"Try it now": [
"هم‌اکنون تلاش کن"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"برای اطلاعات بیشتر درباره یک فرمان، 'help [command]' را تایپ کنید. یا برای اطلاعات کامل استفاده، «help all» را تایپ کنید."
],

View File

@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Lisätietoja"
],
@@ -452,6 +455,9 @@
"Basic": [
"Perus"
],
"Block code": [
""
],
"Bold": [
"Lihavoitu"
],
@@ -578,6 +584,9 @@
"Checking... Please wait.": [
"Tarkistetaan... Odota hetki."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Valitse vaihtoehto"
],
@@ -635,9 +644,6 @@
"Code View": [
"Koodinäkymä"
],
"Code:": [
"Koodi:"
],
"Collaborate on a notebook with others": [
"Tee yhteistyötä muistiinpanon parissa muiden kanssa"
],
@@ -665,6 +671,9 @@
"Command": [
"Komento"
],
"COMMAND": [
""
],
"Command palette": [
"Komentovalikoima"
],
@@ -936,6 +945,9 @@
"Delete selected notes": [
"Poista valitut muistiinpanot"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -1023,6 +1035,9 @@
"Displays the complete information about note.": [
"Näyttää muistiinpanon täydelliset tiedot."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Näyttää annetun huomautuksen."
],
@@ -1858,6 +1873,9 @@
"Keychain Supported: %s": [
"Avainnippu tuettu: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Päivitystä vaativat avaimet"
],
@@ -1992,6 +2010,9 @@
"Manage your plugins": [
"Hallitse laajennuksia"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Hallitse E2EE määrityksiä. Komennot ovat `enable`, `disable`, `decrypt`, `status`, `decrypt-file` ja `target-status`."
],
@@ -2229,6 +2250,9 @@
"No updates available": [
"Ei päivityksiä saatavilla"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Ei mitään"
],
@@ -2436,6 +2460,9 @@
"Open Sync Wizard...": [
"Avaa ohjattu synkronointitoiminto."
],
"Open-source licences": [
""
],
"Open...": [
"Avaa..."
],
@@ -2457,6 +2484,9 @@
"Options": [
"Asetukset"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Järjestetty luettelo"
],
@@ -3055,6 +3085,9 @@
"Select parent notebook": [
"Valitse ylempi muistikirja"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Valitut: %s"
],
@@ -3253,6 +3286,9 @@
"Source: ": [
"Lähde: "
],
"SPACE": [
""
],
"Spacer": [
"Välitys"
],
@@ -3557,9 +3593,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Muistiinpano \"%s\" on palautettu muistikirjaan \"%s\"."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Muistiinpano on muunnettu Markdown-muotoon ja alkuperäinen muistiinpano on siirretty roskakoriin."
],
"The note was successfully moved to the trash.": [
"Muistiinpano siirrettiin roskakoriin onnistuneesti.",
"Muistiinpanot siirrettiin roskakoriin onnistuneesti."
@@ -3840,6 +3873,9 @@
"Try it now": [
"Kokeile nyt"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Kirjoita `help [command]` saadaksesi lisätietoja komennosta; tai kirjoita `help all` saadaksesi täydelliset käyttötiedot."
],

View File

@@ -168,7 +168,7 @@
"[Aucun]"
],
"A brief description of the image:": [
""
"Brève description de l'image :"
],
"A comma-separated list of words. May be used for uncommon words, to help voice typing spell them correctly.": [
"Liste de mots séparés par des virgules. Peut être utilisée pour les mots rares, afin de faciliter leur orthographe vocale."
@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
"Notation musicale ABC : Options"
],
"About": [
"À propos"
],
@@ -243,7 +246,7 @@
"Ajoutez le contenu"
],
"Add column": [
""
"Ajouter une colonne"
],
"Add new": [
"Ajouter"
@@ -254,6 +257,9 @@
"Add recipient:": [
"Ajouter destinataire :"
],
"Add row": [
"Ajouter une ligne"
],
"Add tags:": [
"Ajouter étiquettes :"
],
@@ -342,7 +348,7 @@
"Un dessin automatiquement sauvegardé a été trouvé. Le joindre à la note ?"
],
"An error occurred while sending the response. This can happen if the app is offline or cannot connect to the server.\nError: %s": [
""
"Une erreur s'est produite lors de l'envoi de la réponse. Cela peut arriver si l'application est hors ligne ou ne parvient pas à se connecter au serveur.\nErreur : %s"
],
"An error occurred: %s": [
"Une erreur est survenue : %s"
@@ -467,6 +473,9 @@
"Beta": [
"Beta"
],
"Block code": [
"Bloc de code"
],
"Bold": [
"Gras"
],
@@ -521,6 +530,9 @@
"Cannot change encrypted item": [
"Un objet chiffré ne peut pas être modifié"
],
"Cannot convert read-only item: \"%s\"": [
"Impossible de convertir l'élément en lecture seule : \"%s\""
],
"Cannot copy note to \"%s\" notebook": [
"Impossible de copier la note vers le carnet \"%s\""
],
@@ -605,6 +617,9 @@
"Checking... Please wait.": [
"Vérification… Veuillez patienter."
],
"Chinese/Japanese/Korean characters": [
"Caractères chinois/japonais/coréens"
],
"Choose an option": [
"Choisissez une option"
],
@@ -671,9 +686,6 @@
"Code View": [
"Code"
],
"Code:": [
"Code :"
],
"Collaborate on a notebook with others": [
"Collaborer sur des carnets avec d'autres personnes"
],
@@ -683,6 +695,9 @@
"Collapse all notebooks": [
"Réduire tous les carnets"
],
"Collapse title": [
"Réduire le titre"
],
"Collapsed": [
"Réduit"
],
@@ -698,6 +713,9 @@
"Command": [
"Commande"
],
"COMMAND": [
"COMMANDE"
],
"Command palette": [
"Palette de commandes"
],
@@ -737,6 +755,9 @@
"Configuration": [
"Configuration"
],
"Configured keyboard shortcuts:": [
"Raccourcis clavier configurés :"
],
"Configures the size of scrollbars used in the app.": [
"Configure la taille des barres de défilement utilisées dans l'application."
],
@@ -786,8 +807,8 @@
"Convert it": [
"Convertir"
],
"Convert note to Markdown": [
"Convertir note en Markdown"
"Convert to Markdown": [
"Convertir en Markdown"
],
"Convert to note": [
"Convertir en note"
@@ -844,8 +865,8 @@
"Could not connect to plugin repository.": [
"Impossible de télécharger la liste des modules."
],
"Could not convert note to Markdown: %s": [
"Impossible de convertir la note en Markdown : %s"
"Could not convert notes to Markdown: %s": [
"Impossible de convertir les notes en Markdown : %s"
],
"Could not export notes: %s": [
"Impossible d'exporter les notes : %s"
@@ -1021,6 +1042,9 @@
"Delete attachment \"%s\"?": [
"Supprimer la pièce jointe \"%s\" ?"
],
"Delete column": [
"Supprimer la colonne"
],
"Delete expired sessions": [
"Supprimer les sessions expirées"
],
@@ -1048,9 +1072,18 @@
"Delete profile \"%s\"": [
"Supprimer profil \"%s\" ?"
],
"Delete profile \"%s\"?\n\nAll data, including notes, notebooks and tags will be permanently deleted.": [
"Supprimer le profil « %s » ?\n\nToutes les données, y compris les notes, les carnets et les étiquettes, seront définitivement supprimées."
],
"Delete row": [
"Supprimer la ligne"
],
"Delete selected notes": [
"Supprimer les notes sélectionnées"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
"Supprimer l'étiquette « %s » ?\n\nToutes les notes associées à cette étiquette seront conservées, mais l'étiquette sera supprimée de toutes les notes."
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Supprimer le carnet \"Inbox\" ?\n\nSi vous le supprimez, tout email qui lui a été récemment envoyé peut être perdu."
],
@@ -1156,6 +1189,9 @@
"Displays the complete information about note.": [
"Affiche tous les détails de la note."
],
"Displays the configured keyboard shortcuts.": [
"Affiche les raccourcis clavier configurés."
],
"Displays the given note.": [
"Affiche la note."
],
@@ -1181,7 +1217,7 @@
"Ne perdez pas le mot de passe car, pour des raisons de sécurité, ce sera la *seule* façon de déchiffrer les données. Pour activer le chiffrement, veuillez entrer votre mot de passe ci-dessous."
],
"Do you find the Joplin web app useful?": [
""
"Trouvez-vous l'application web Joplin utile ?"
],
"Document scanner: Title template": [
"Scanner de documents : modèle de titre"
@@ -1288,6 +1324,9 @@
"Edit profile configuration...": [
"Editer la configuration des profils..."
],
"Edit tag": [
"Modifier la balise"
],
"Editor": [
"Éditeur"
],
@@ -1354,6 +1393,9 @@
"Enable abbreviation syntax": [
"Activer la syntaxe pour abréviations"
],
"Enable ABC musical notation support": [
"Activer notation musicale ABC"
],
"Enable audio player": [
"Activer le lecteur audio"
],
@@ -1540,6 +1582,9 @@
"Expand all notebooks": [
"Développer tous les carnets"
],
"Expand title": [
"Développer le titre"
],
"Expanded": [
"Etendu"
],
@@ -1603,6 +1648,9 @@
"Feature flags": [
"Feature flags"
],
"Feedback": [
"Feedback"
],
"Fetched items: %d/%d.": [
"Téléchargés : %d/%d."
],
@@ -1841,6 +1889,9 @@
"Import or export your data": [
"Importez ou exportez vos données"
],
"Import...": [
"Importer..."
],
"Imported successfully!": [
"Importé avec succès !"
],
@@ -2013,28 +2064,31 @@
"Joplin Mobile"
],
"Joplin Server": [
"Serveur Joplin"
"Joplin Server"
],
"Joplin Server (SAML)": [
"Joplin Server (SAML)"
],
"Joplin Server Business": [
"Joplin Server Business"
],
"Joplin Server email": [
"Serveur Joplin : Email"
"Joplin Server : Email"
],
"Joplin Server Login": [
"Connexion Joplin Server"
],
"Joplin Server password": [
"Serveur Joplin : Mot de passe"
"Joplin Server : Mot de passe"
],
"Joplin Server URL": [
"Serveur Joplin : URL"
"Joplin Server : URL"
],
"Joplin SSO Authentication": [
"Authentification SSO Joplin"
],
"Joplin supports saving the location at which notes are saved or created. Do you want to enable it? This can be changed at any time in settings.": [
""
"Joplin permet d'enregistrer l'emplacement où les notes sont enregistrées ou créées. Souhaitez-vous activer cette fonctionnalité ? Vous pouvez modifier ce paramètre à tout moment."
],
"Joplin Web Clipper allows saving web pages and screenshots from your browser to Joplin.": [
"Le Web Clipper permet d'enregistrer des pages web et des captures d'écran depuis votre navigateur vers Joplin."
@@ -2063,11 +2117,14 @@
"Keychain Supported: %s": [
"Trousseau supporté : %s"
],
"KEYS": [
"TOUCHES"
],
"Keys that need upgrading": [
"Clefs qui peuvent être mise à niveau"
],
"Label": [
""
"Étiquette"
],
"Landscape": [
"Paysage"
@@ -2209,6 +2266,9 @@
"Manage your plugins": [
"Gérer vos modules"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
"Gérez vos profils. Vous pouvez les renommer ou les supprimer. Le profil actif ne peut pas être supprimé."
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gérer la configuration E2EE (Chiffrement de bout à bout). Les commandes sont `enable`, `disable`, `decrypt` et `status`, `decrypt-file` et `target-status`."
],
@@ -2224,6 +2284,9 @@
"Markdown editor": [
"Éditeur Markdown"
],
"Markdown editor: Highlight active line": [
"Éditeur Markdown : Surligner la ligne active"
],
"Markdown editor: Render images": [
"Éditeur Markdown : rendu d'images"
],
@@ -2312,6 +2375,9 @@
"Déplacer %d note vers carnet \"%s\" ?",
"Déplacer %d notes vers carnet \"%s\" ?"
],
"Move %d notebooks to the trash?\n\nAll notes and sub-notebooks within these notebooks will also be moved to the trash.": [
"Déplacer %d blocs-notes vers la corbeille ?\n\nToutes les notes et sous-blocs-notes contenus dans ces blocs-notes seront également déplacés vers la corbeille."
],
"Move down": [
"Déplacer vers le bas"
],
@@ -2462,6 +2528,9 @@
"No updates available": [
"Aucune mise à jour disponible"
],
"No URL for SAML authentication set.": [
"Aucune URL n'est définie pour l'authentification SAML."
],
"None": [
"Aucun"
],
@@ -2484,7 +2553,7 @@
"Pas maintenant"
],
"Not useful": [
""
"Inutile"
],
"note": [
"note"
@@ -2534,6 +2603,9 @@
"Note list style": [
"Style de liste de note"
],
"Note not published: %s": [
"Note non publiée : %s"
],
"Note preview": [
"Aperçu des notes"
],
@@ -2669,6 +2741,9 @@
"Open Sync Wizard...": [
"Ouvrir l'assistant de synchronisation…"
],
"Open-source licences": [
"Licences open source"
],
"Open...": [
"Ouvrir…"
],
@@ -2690,11 +2765,14 @@
"Options": [
"Options"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
"Options à utiliser lors du rendu du code ABC. Il doit s'agir d'un objet JSON5. La liste complète des options est disponible à l'adresse : %s"
],
"Ordered list": [
"Liste ordonnée"
],
"Other": [
""
"Autre"
],
"Other applications...": [
"Autres applications..."
@@ -2919,6 +2997,9 @@
"Profile name": [
"Nom du profil"
],
"Profile name cannot be empty": [
"Le nom du profil ne peut pas être vide"
],
"Profile name:": [
"Nom du profil :"
],
@@ -2946,6 +3027,9 @@
"Publish Note": [
"Publier une note"
],
"Publish note \"%s\" (in notebook \"%s\")?": [
"Publier les notes \"%s\" (dans le carnet \"%s\") ?"
],
"Publish note...": [
"Publier la note…"
],
@@ -2958,8 +3042,11 @@
"Publish/unpublish": [
"Publier/dépublier"
],
"Published at URL: %s": [
"Publié à l'URL : %s"
],
"Publishes a note to Joplin Server or Joplin Cloud": [
""
"Publie une note sur Joplin Server ou Joplin Cloud"
],
"QR Code": [
"Code QR"
@@ -3006,6 +3093,9 @@
"Recipients:": [
"Destinataires :"
],
"Recognise text:": [
"Reconnaître le texte :"
],
"Recognize handwritten image": [
"Reconnaître une image manuscrite"
],
@@ -3042,6 +3132,9 @@
"Remove": [
"Supprimer"
],
"Remove %d tags from all notes? This cannot be undone.": [
"Supprimer les balises %d de toutes les notes ? Cette opération est irréversible."
],
"Remove %s": [
"Supprimer %s"
],
@@ -3234,6 +3327,9 @@
"Save geo-location with notes": [
"Enregistrer les informations de géolocalisation des notes"
],
"Save geolocation?": [
"Enregistrer la géolocalisation ?"
],
"Scan notebook": [
"Numériser le carnet"
],
@@ -3304,11 +3400,14 @@
"Sélectionnez un carnet"
],
"Select one of the other supported sync targets.": [
""
"Sélectionnez une autre cible de synchronisation prise en charge."
],
"Select parent notebook": [
"Sélectionner le carnet parent"
],
"Select the type of file to be imported:": [
"Sélectionnez le type de fichier à importer :"
],
"Selected: %s": [
"Sélectionné : %s"
],
@@ -3513,6 +3612,9 @@
"Source: ": [
"Source : "
],
"SPACE": [
"ESPACE"
],
"Spacer": [
"Espaceur"
],
@@ -3643,7 +3745,7 @@
"Changer de carnet – toutes les opérations à venir se feront dans ce carnet."
],
"Sync": [
""
"Sync"
],
"Sync as many devices as you want": [
"Synchronisez autant d'appareils que vous le souhaitez"
@@ -3711,9 +3813,15 @@
"Tab moves focus": [
"Tab déplace le focus"
],
"Table": [
"Tableau"
],
"Tabloid": [
"Tabloïde"
],
"Tag: %s": [
"Étiquette : %s"
],
"Tagged: %d.": [
"Étiquettes : %d."
],
@@ -3723,6 +3831,9 @@
"Take photo": [
"Prendre une photo"
],
"Take survey": [
"Répondez au sondage"
],
"Task \"%s\" failed with error: %s": [
"La tâche \"%s\" a échoué avec l'erreur : %s"
],
@@ -3742,7 +3853,7 @@
"Commande de l'éditeur de texte"
],
"Thank you for the feedback!\nDo you have time to complete a short survey?": [
""
"Merci pour votre avis !\nAvez-vous quelques instants pour répondre à un court sondage ?"
],
"The active profile cannot be deleted. Switch to a different profile and try again.": [
"Le profil actif ne peut pas être supprimé. Changez de profil et réessayez."
@@ -3818,7 +3929,8 @@
"La note \"%s\" a été restaurée dans le carnet \"%s\"."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"La note a été convertie en Markdown et la note d'origine a été déplacée vers la corbeille"
"La note a été convertie au format Markdown et la note originale a été déplacée vers la corbeille.",
"Les notes ont été converties au format Markdown et les notes originales ont été déplacées vers la corbeille."
],
"The note was successfully moved to the trash.": [
"La note a été déplacée avec succès vers la corbeille.",
@@ -4121,6 +4233,9 @@
"Try it now": [
"Essayer"
],
"TYPE": [
"TYPE"
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Tapez `help [command]` pour plus d'information sur une commande ; ou tapez `help all` pour l'aide complète."
],
@@ -4142,6 +4257,9 @@
"Unable to share log data. Reason: %s": [
"Impossible de partager le log. Raison : %s"
],
"Unable to share note data. Reason: %s": [
"Impossible de partager les données de la note. Raison : %s"
],
"Unchecked": [
"Non coché"
],
@@ -4287,7 +4405,7 @@
"Utilisée lorsque une police à taille fixe est nécessaire pour afficher le texte de façon lisible (par ex. pour les tables, code source, etc.)."
],
"Useful": [
""
"Utile"
],
"User deletions": [
"Suppressions d'utilisateurs"
@@ -4395,7 +4513,7 @@
"Lors de la création d'une tâche :"
],
"When enabled, requests that the images in the note be transcribed with a higher-quality on-server transcription service. Requires sync with a copy of the desktop app.": [
""
"Lorsqu'elle est activée, cette option demande la transcription des images de la note par un service de transcription serveur de meilleure qualité. Nécessite une synchronisation avec une copie de l'application de bureau."
],
"When enabled, the application will scan your attachments and extract the text from it. This will allow you to search for text in these attachments.": [
"Lorsqu'elle est activée, l'application analysera vos pièces jointes et en extraira le texte. Cela vous permettra de rechercher du texte dans ces pièces jointes."

View File

@@ -179,6 +179,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Sobre"
],
@@ -443,6 +446,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Negrita"
],
@@ -581,6 +587,9 @@
"Checking... Please wait.": [
"Comprobando... Agarde."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Seleccione unha opción"
],
@@ -671,6 +680,9 @@
"Command": [
"Comando"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta de comandos"
],
@@ -1000,6 +1012,9 @@
"Delete selected notes": [
"Eliminar notas seleccionadas"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Eliminar o caderno da bandexa de entrada?\n\nSe o eliminas, é posible que se perdan os correos electrónicos enviados recentemente."
],
@@ -1105,6 +1120,9 @@
"Displays the complete information about note.": [
"Mostra toda a información da nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Mostra a nota dada."
],
@@ -1982,6 +2000,9 @@
"Keychain Supported: %s": [
"Chaveiro Soportado: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Claves que necesitan actualizarse"
],
@@ -2118,6 +2139,9 @@
"Manage your plugins": [
"Xestione os seus plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Xestiona a configuración E2EE. As ordes son «enable», «disable», «decrypt», «status» e «target-status»."
],
@@ -2356,6 +2380,9 @@
"No updates available": [
"Non hai actualizacións dispoñibles"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Ningún"
],
@@ -2548,6 +2575,9 @@
"Open Sync Wizard...": [
"Abrir asistente de sincronización..."
],
"Open-source licences": [
""
],
"Open...": [
"Abrir…"
],
@@ -2569,6 +2599,9 @@
"Options": [
"Opcións"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista ordeada"
],
@@ -3146,6 +3179,9 @@
"Select parent notebook": [
"Seleccionar caderno principal"
],
"Select the type of file to be imported:": [
""
],
"Selection deleted": [
"Selección eliminada"
],
@@ -3341,6 +3377,9 @@
"Source: ": [
"Orixe: "
],
"SPACE": [
""
],
"Spacer": [
"Espaciador"
],
@@ -3940,6 +3979,9 @@
"Try it now": [
"Ténteo agora"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Escriba «help [command]» para obter máis información sobre unha orde ou escriba «help all» para ver toda a información de uso."
],

View File

@@ -25,9 +25,9 @@
"%d MB po bilješci ili privitku"
],
"%d minute": [
"%d minunta",
"%d minunte",
"%d minunta"
"%d minuta",
"%d minute",
"%d minuta"
],
"%d note matches this pattern. Delete it?": [
"%d bilješka se poklapa s ovim uzorkom. Želiš li je izbrisati?",
@@ -174,7 +174,7 @@
"[Ništa]"
],
"A brief description of the image:": [
""
"Kratki opis slike:"
],
"A comma-separated list of words. May be used for uncommon words, to help voice typing spell them correctly.": [
"Popis riječi odvojenih zarezima. Može se koristiti za neobične riječi, kako bi se glasovnom tipkanju pomoglo da ih ispravno napiše."
@@ -191,6 +191,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Informacije"
],
@@ -249,7 +252,7 @@
"Dodaj sadržaj"
],
"Add column": [
""
"Dodaj stupac"
],
"Add new": [
"Dodaj novu"
@@ -260,6 +263,9 @@
"Add recipient:": [
"Dodaj primaoca:"
],
"Add row": [
"Dodaj redak"
],
"Add tags:": [
"Dodaj oznake:"
],
@@ -348,7 +354,7 @@
"Pronađen je automatski spremljen crtež. Priložiti kopiju bilješci?"
],
"An error occurred while sending the response. This can happen if the app is offline or cannot connect to the server.\nError: %s": [
""
"Dogodila se greška prilikom slanja odgovora. To se može dogoditi ako je aplikacija offline ili se ne može spojiti na server.\nGreška: %s"
],
"An error occurred: %s": [
"Dogodila se greška: %s"
@@ -473,6 +479,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Podebljano"
],
@@ -611,6 +620,9 @@
"Checking... Please wait.": [
"Provjeravanje … Pričekaj."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Odaberi jednu opciju"
],
@@ -669,7 +681,7 @@
"Cmd-klik za otvaranje: %s"
],
"Code": [
"Kȏd"
"Kod"
],
"Code Block": [
"Blok koda"
@@ -677,9 +689,6 @@
"Code View": [
"Prikaz koda"
],
"Code:": [
"Kod:"
],
"Collaborate on a notebook with others": [
"Surađuj s drugima na bilježnici"
],
@@ -689,8 +698,11 @@
"Collapse all notebooks": [
"Sklopi sve bilježnice"
],
"Collapse title": [
"Sklopi naslov"
],
"Collapsed": [
"Skupljeno"
"Sklopljeno"
],
"Coming alarms": [
"Nadolazeća upozorenja"
@@ -704,6 +716,9 @@
"Command": [
"Naredba"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta naredbi"
],
@@ -793,9 +808,6 @@
"Convert it": [
"Pretvori"
],
"Convert note to Markdown": [
"Pretvori bilješku u Markdown"
],
"Convert to note": [
"Pretvori u bilješku"
],
@@ -847,14 +859,11 @@
"Neuspjelo autoriziranje programa:\n\n%s\n\nPokušaj ponovo."
],
"Could not connect to Joplin Server. Please check the Synchronisation options in the config screen. Full error was:\n\n%s": [
"Neuspjelo povezivanje s Joplin poslužiteljem. Provjeri opcije sinkronizacije u prozoru konfiguracije. Potpuna greška glasi:\n\n%s"
"Neuspjelo povezivanje s Joplin Server. Provjeri opcije sinkronizacije u prozoru konfiguracije. Potpuna greška glasi:\n\n%s"
],
"Could not connect to plugin repository.": [
"Neuspjelo povezivanje s repozitorijem dodataka."
],
"Could not convert note to Markdown: %s": [
"Neuspjelo pretvaranja bilješke u Markdown: %s"
],
"Could not export notes: %s": [
"Neuspio izvoz bilježaka: %s"
],
@@ -1029,6 +1038,9 @@
"Delete attachment \"%s\"?": [
"Izbrisati privitak „%s”?"
],
"Delete column": [
"Izbriši stupac"
],
"Delete expired sessions": [
"Izbriši istekle sesije"
],
@@ -1056,9 +1068,15 @@
"Delete profile \"%s\"": [
"Izbriši profil „%s”"
],
"Delete row": [
"Izbriši redak"
],
"Delete selected notes": [
"Izbriši odabrane bilješke"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Izbrisati bilježnicu „Dolazna pošta”?\n\nAko izbrišeš bilježnicu dolazne pošte, sva e-pošta koja je nedavno poslana na nju će se možda izgubiti."
],
@@ -1164,6 +1182,9 @@
"Displays the complete information about note.": [
"Prikazuje potpune podatke o bilješci."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Prikazuje zadanu bilješku."
],
@@ -1189,7 +1210,7 @@
"Nemoj izgubiti lozinku, jer će to iz sigurnosnih razloga biti *jedini* način za dešifriranje podataka! Za aktiviranje šifriranja dolje upiši svoju lozinku."
],
"Do you find the Joplin web app useful?": [
""
"Smatraš li web aplikaciju Joplin korisnom?"
],
"Document scanner: Title template": [
"Skener dokumenata: Predložak naslova"
@@ -1548,6 +1569,9 @@
"Expand all notebooks": [
"Rasklopi sve bilježnice"
],
"Expand title": [
"Rasklopi naslov"
],
"Expanded": [
"Rasklopljeno"
],
@@ -1612,7 +1636,7 @@
"Oznake funkcija"
],
"Feedback": [
""
"Povratne informacije"
],
"Fetched items: %d/%d.": [
"Dohvaćeni elementi: %d/%d."
@@ -1746,7 +1770,7 @@
"Odobri autorizaciju"
],
"Have you authorised the application login in the above URL?": [
"Jesi li autorizirao/la prijavu program u gore navedenom URL-u?"
"Jesi li autorizirao/la prijavu programa u gore navedenom URL-u?"
],
"Header %d": [
"Zaglavlje %d"
@@ -1920,7 +1944,7 @@
"Informacije"
],
"Inline Code": [
"Umetnuti kȏd"
"Umetnuti kod"
],
"Insert": [
"Umetni"
@@ -2027,6 +2051,9 @@
"Joplin Server": [
"Joplin Server"
],
"Joplin Server (SAML)": [
"Joplin Server (SAML)"
],
"Joplin Server Business": [
"Joplin Server Business"
],
@@ -2046,7 +2073,7 @@
"Joplin SSO autentifikacija"
],
"Joplin supports saving the location at which notes are saved or created. Do you want to enable it? This can be changed at any time in settings.": [
""
"Joplin podržava spremanje mjesta na kojoj se bilješke spremaju ili stvaraju. Želiš li to aktivirati? To možeš promijeniti u bilo kojem trenutku u postavkama."
],
"Joplin Web Clipper allows saving web pages and screenshots from your browser to Joplin.": [
"Joplin Web Clipper omogućuje spremanje web-stranica i slika ekrana iz tvog preglednika u Joplin."
@@ -2075,11 +2102,14 @@
"Keychain Supported: %s": [
"Podržani privjesak ključeva: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Ključevi koji se moraju nadograditi"
],
"Label": [
""
"Etiketa"
],
"Landscape": [
"Polegnuto"
@@ -2223,6 +2253,9 @@
"Manage your plugins": [
"Upravljaj dodacima"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Upravlja E2EE konfiguracijom. Naredbe su `enable` (aktiviraj), `disable` (deaktiviraj), `decrypt` (dešifriraj), `status` (stanje), `decrypt-file` (dešifriraj datoteku) i `target-status` (stanje cilja)."
],
@@ -2238,6 +2271,9 @@
"Markdown editor": [
"Markdown uređivač"
],
"Markdown editor: Highlight active line": [
"Markdown uređivač: Istakni aktivni redak"
],
"Markdown editor: Render images": [
"Markdown uređivač: Prikazivanje slika"
],
@@ -2477,6 +2513,9 @@
"No updates available": [
"Nema novih verzija"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Ništa"
],
@@ -2499,7 +2538,7 @@
"Ne sada"
],
"Not useful": [
""
"Nije korisno"
],
"note": [
"bilješka"
@@ -2549,6 +2588,9 @@
"Note list style": [
"Stil popisa bilježaka"
],
"Note not published: %s": [
"Bilješka nije objavljena: %s"
],
"Note preview": [
"Pregled bilješke"
],
@@ -2610,7 +2652,7 @@
"OCR: URL podataka jezika ili putanja"
],
"OCR: Search in extracted content": [
"OCR: Tra#i u izdvojenom sadržaju"
"OCR: Traži u izdvojenom sadržaju"
],
"OK": [
"U redu"
@@ -2684,6 +2726,9 @@
"Open Sync Wizard...": [
"Otvori programčić za sinkronizaciju …"
],
"Open-source licences": [
""
],
"Open...": [
"Otvori …"
],
@@ -2705,11 +2750,14 @@
"Options": [
"Opcije"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Poredan popis"
],
"Other": [
""
"Drugi"
],
"Other applications...": [
"Drugi programi …"
@@ -2962,6 +3010,9 @@
"Publish Note": [
"Objavi bilješku"
],
"Publish note \"%s\" (in notebook \"%s\")?": [
"Objaviti bilješku „%s“ (u bilježnici „%s“)?"
],
"Publish note...": [
"Objavi bilješku …"
],
@@ -2974,8 +3025,11 @@
"Publish/unpublish": [
"Objavi/Poništi objavljivanje"
],
"Published at URL: %s": [
"Objavljeno na URL-u: %s"
],
"Publishes a note to Joplin Server or Joplin Cloud": [
""
"Objavljuje bilješku na Joplin Server ili Joplin Cloud"
],
"QR Code": [
"QR kod"
@@ -3022,6 +3076,9 @@
"Recipients:": [
"Primaoci:"
],
"Recognise text:": [
"Prepoznaj tekst:"
],
"Recognize handwritten image": [
"Prepoznaj rukom pisane slike"
],
@@ -3250,6 +3307,9 @@
"Save geo-location with notes": [
"Spremi geografske podatke mjesta s bilješkama"
],
"Save geolocation?": [
"Spremiti geografske podatke mjesta?"
],
"Scan notebook": [
"Skeniraj bilježnicu"
],
@@ -3320,11 +3380,14 @@
"Odaberi bilježnicu"
],
"Select one of the other supported sync targets.": [
""
"Odaberi jedan od drugih podržanih ciljeva sinkronizacije."
],
"Select parent notebook": [
"Odaberi nadređenu bilježnicu"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Odabrano: %s"
],
@@ -3529,6 +3592,9 @@
"Source: ": [
"Izvor: "
],
"SPACE": [
""
],
"Spacer": [
"Razmak"
],
@@ -3659,7 +3725,7 @@
"Prebacuje na bilježnicu [notebook] – sve daljnje operacije će se izvoditi u ovoj bilježnici."
],
"Sync": [
""
"Sinkronizraj"
],
"Sync as many devices as you want": [
"Sinkroniziraj koliko god uređaja želiš"
@@ -3739,6 +3805,9 @@
"Take photo": [
"Snimi sliku"
],
"Take survey": [
"Sudjeluj u anketi"
],
"Task \"%s\" failed with error: %s": [
"Zadatak „%s“ nije uspio s greškom: %s"
],
@@ -3758,7 +3827,7 @@
"Naredba za uređivača teksta"
],
"Thank you for the feedback!\nDo you have time to complete a short survey?": [
""
"Hvala na povratnoj informaciji!\nImaš li vremena ispuniti kratku anketu?"
],
"The active profile cannot be deleted. Switch to a different profile and try again.": [
"Aktivni profil se ne može izbrisati. Prebaci se na jedan drugi profil i pokušaj ponovo."
@@ -3834,9 +3903,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Bilješka „%s” je uspješno obnovljena u bilježnicu „%s”."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Bilješka je pretvorena u Markdown, a izvorna bilješka je premještena u smeće"
],
"The note was successfully moved to the trash.": [
"Bilješka je uspješno premještena u smeće.",
"Bilješke su uspješno premještene u smeće.",
@@ -3945,7 +4011,7 @@
"Ova je funkcija standardno deaktivirana. Moraš je ručno aktivirati uključivanjem opcije „Aktiviraj rukom pisanu transkripciju“."
],
"This feature is only available on Joplin Cloud and Joplin Server.": [
"Ova je funkcija dostupna samo na Joplin Cloudu i Joplin Serveru."
"Ova je funkcija dostupna samo na Joplin Cloud i Joplin Server."
],
"This image type is not supported by the recognition system.": [
"Sustav za prepoznavanje ne podržava ovu vrstu slike."
@@ -4142,6 +4208,9 @@
"Try it now": [
"Isprobaj"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Upiši `help [command]` za više informacija o naredbi ili `help all` za sve informacije o korištenju naredbi."
],
@@ -4163,6 +4232,9 @@
"Unable to share log data. Reason: %s": [
"Nije moguće izvesti ili dijeliti podatke dnevnika. Razlog: %s"
],
"Unable to share note data. Reason: %s": [
"Nije moguće dijeliti podatke bilješke. Razlog: %s"
],
"Unchecked": [
"Neoznačeno"
],
@@ -4308,7 +4380,7 @@
"Koristi se za tekst fiksne širine (npr. tablice, označiva polja, programski kod). Ako se ne pronađe, koristi se generički font fiksne širine."
],
"Useful": [
""
"Korisno"
],
"User deletions": [
"Brisanja korisnika"
@@ -4416,7 +4488,7 @@
"Prilikom stvaranja novog zadatka:"
],
"When enabled, requests that the images in the note be transcribed with a higher-quality on-server transcription service. Requires sync with a copy of the desktop app.": [
""
"Kada je aktivirano, traži da se slike u bilješci transkribiraju kvalitetnijom uslugom transkripcije na serveru. Zahtijeva sinkronizaciju s kopijom desktop aplikacije."
],
"When enabled, the application will scan your attachments and extract the text from it. This will allow you to search for text in these attachments.": [
"Kada je aktivirano, program će pregledati tvoje privitke i iz njih izdvojiti tekst. To omogućuje pretraživanje teksta u tim privicima."

View File

@@ -185,6 +185,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Névjegy"
],
@@ -243,7 +246,7 @@
"Törzsszöveg hozzáadása"
],
"Add column": [
""
"Oszlop hozzáadása"
],
"Add new": [
"Új hozzáadása"
@@ -254,6 +257,9 @@
"Add recipient:": [
"Címzett hozzáadása:"
],
"Add row": [
"Sor hozzáadása"
],
"Add tags:": [
"Címkék hozzáadása:"
],
@@ -423,7 +429,7 @@
"A mellékleteket nem lehet letölteni"
],
"Attention: If you change this location, make sure you copy all your content to it before syncing, otherwise all files will be removed! See the FAQ for more details: %s": [
"Figyelem: Ha módosítja ezt a helyet, győződjön meg arról, hogy az összes tartalmát átmásolta oda szinkronizálás előtt, különben minden fájl törölve lesz! További részletekért lásd a GYIK-et: %s"
"Figyelem: Ha módosítja ezt a helyet, győződjön meg arról, hogy az összes tartalmát átmásolta oda szinkronizálás előtt, különben minden fájl törölve lesz! További részletekért tekintse meg a GYIK-et: %s"
],
"Authentication was not completed (did not receive an authentication token).": [
"A hitelesítés nem fejeződött be (nem érkezett hitelesítő-token)."
@@ -438,13 +444,13 @@
"Automatikus"
],
"Auto-add disabled accounts for deletion": [
"A letiltott fiókok automatikus hozzáadása a törléshez"
"Letiltott fiókok automatikus hozzáadása a törléshez"
],
"Auto-format Markdown in the Rich Text Editor": [
"Markdown automatikus átalakítása a formázott szöveges szerkesztőben"
],
"Auto-pair braces, parentheses, quotations, etc.": [
"Automatikusan párosítsa a zárójeleket, idézőjeleket, stb."
"Zárójelek, idézőjelek, stb. automatikus párosítása"
],
"Autocomplete Markdown and HTML": [
"Automatikus kiegészítés Markdown és HTML esetén"
@@ -453,10 +459,10 @@
"Frissítések automatikus ellenőrzése"
],
"Automatically delete notes in the trash after a number of days": [
"Kuka tartalmának automatikusan törlése bizonyos napok elteltével"
"Kuka tartalmának automatikus törlése bizonyos napok elteltével"
],
"Automatically switch theme to match system theme": [
"Automatikus átváltás a rendszer témájával egyező témára"
"Automatikus váltás a rendszer témájával egyező témára"
],
"Back": [
"Vissza"
@@ -467,6 +473,9 @@
"Beta": [
"Béta"
],
"Block code": [
""
],
"Bold": [
"Félkövér"
],
@@ -605,6 +614,9 @@
"Checking... Please wait.": [
"Ellenőrzés… Kis türelmet."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Válasszon egy beállítást"
],
@@ -671,9 +683,6 @@
"Code View": [
"Kódnézet"
],
"Code:": [
"Kód:"
],
"Collaborate on a notebook with others": [
"Együttműködés egy jegyzetfüzeten másokkal"
],
@@ -701,6 +710,9 @@
"Command": [
"Parancs"
],
"COMMAND": [
""
],
"Command palette": [
"Parancspaletta"
],
@@ -789,9 +801,6 @@
"Convert it": [
"Átalakítás"
],
"Convert note to Markdown": [
"Jegyzet átalakítása Markdown formátumba"
],
"Convert to note": [
"Átalakítás jegyzetté"
],
@@ -847,9 +856,6 @@
"Could not connect to plugin repository.": [
"Nem sikerült kapcsolódni a bővítménytárolóhoz."
],
"Could not convert note to Markdown: %s": [
"Nem sikerült a jegyzetet átalakítani Markdown formátumba: %s"
],
"Could not export notes: %s": [
"Nem sikerült exportálni a jegyzeteket: %s"
],
@@ -1024,6 +1030,9 @@
"Delete attachment \"%s\"?": [
"Törli a(z) „%s” mellékletet?"
],
"Delete column": [
"Oszlop törlése"
],
"Delete expired sessions": [
"Lejárt munkamenetek törlése"
],
@@ -1051,9 +1060,15 @@
"Delete profile \"%s\"": [
"A(z) „%s” nevű profil törlése"
],
"Delete row": [
"Sor törlése"
],
"Delete selected notes": [
"Kijelölt jegyzetek törlése"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Törli az „Inbox” nevű jegyzetfüzetet?\n\nHa törli az „Inbox” nevű jegyzetfüzetet, az ide nemrég küldött e-mailek elveszhetnek."
],
@@ -1159,6 +1174,9 @@
"Displays the complete information about note.": [
"Részletes információkat jelenít meg a jegyzetekről."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Megjeleníti a megadott jegyzetet."
],
@@ -1307,7 +1325,7 @@
"Szerkesztő betűmérete"
],
"Editor maximum width": [
"Szerkesztő maximális szélessége"
"Szerkesztő legnagyobb szélessége"
],
"Editor monospace font family": [
"Szerkesztő monospace betűcsaládja"
@@ -1340,7 +1358,7 @@
"kiemelt szöveg"
],
"Empty trash": [
"Kuka kiürítése"
"Kuka ürítése"
],
"Enable": [
"Engedélyezés"
@@ -2075,6 +2093,9 @@
"Keychain Supported: %s": [
"Támogatott kulcstartók: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Frissítésre szoruló kulcsok"
],
@@ -2221,6 +2242,9 @@
"Manage your plugins": [
"Bővítmények kezelése"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Végpontok közötti titkosításbeállítások kezelése (E2EE). A parancsok a következők: `enable` (engedélyezés), `disable` (letiltás), `decrypt` (visszafejtés), `status` (állapot), `decrypt-file` (fájl visszafejtése) és `target-status` (cél állapota)."
],
@@ -2270,16 +2294,16 @@
"Matematika"
],
"Max concurrent connections": [
"Maximális egyidejű kapcsolatok"
"Megengedett egyidejű kapcsolatok száma"
],
"Max Item Size": [
"Maximális elemméret"
"Legnagyobb elemméret"
],
"Max note or attachment size": [
"Maximális jegyzet- vagy mellékletméret"
"Legnagyobb jegyzet- vagy mellékletméret"
],
"Max Total Size": [
"Maximális összméret"
"Legnagyobb összméret"
],
"Media player, math, diagrams, table of contents": [
"Médialejátszó, matematika, diagramok, tartalomjegyzék"
@@ -2477,6 +2501,9 @@
"No updates available": [
"Nincsenek elérhető frissítések"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Semmi"
],
@@ -2595,7 +2622,7 @@
"Jegyzetek"
],
"Notes and settings are stored in: %s": [
"A jegyzetek és beállítások itt vannak tárolva: %s"
"Jegyzetek és beállítások tárolási helye: %s"
],
"Notes can only be created within a notebook.": [
"A jegyzetek csak egy jegyzetfüzeten belül hozhatók létre."
@@ -2670,7 +2697,7 @@
"PDF-megjelenítő megnyitása"
],
"Open primary app instance...": [
"Az elsődleges alkalmazáspéldány megnyitása…"
"Elsődleges alkalmazáspéldány megnyitása…"
],
"Open profile directory": [
"Profilkönyvtár megnyitása"
@@ -2687,6 +2714,9 @@
"Open Sync Wizard...": [
"Szinkronizálási segéd megnyitása…"
],
"Open-source licences": [
""
],
"Open...": [
"Megnyitás…"
],
@@ -2708,6 +2738,9 @@
"Options": [
"Beállítások"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Számozott lista"
],
@@ -2818,7 +2851,7 @@
"Frissítse a Joplint a(z) %s vagy újabb verzióra a bővítmény használatához."
],
"Please wait for all attachments to be downloaded and decrypted. You may also switch to %s to edit the note.": [
"Várjon, amíg minden melléklet letöltődik és visszafejtődik. A jegyzet szerkesztéséhez átválthat a(z) %s nézetre is."
"Várjon, amíg minden melléklet letöltődik és visszafejtődik. A jegyzet szerkesztéséhez a(z) %s nézetre is válthat."
],
"Please wait while we load your organisation sign-in page...": [
"Várjon, amíg a szervezet bejelentkezési oldala betöltődik…"
@@ -3339,6 +3372,9 @@
"Select parent notebook": [
"Szülő jegyzetfüzet kijelölése"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Kiválasztva: %s"
],
@@ -3543,6 +3579,9 @@
"Source: ": [
"Forrás: "
],
"SPACE": [
""
],
"Spacer": [
"Elválasztó"
],
@@ -3796,7 +3835,7 @@
"Az alkalmazást újra kell indítani a módosítások érvényesítéséhez."
],
"The attachments will no longer be watched when you switch to a different note.": [
"A mellékletek figyelése megszűnik, ha átvált egy másik jegyzetre."
"A mellékletek figyelése megszűnik, ha egy másik jegyzetre vált."
],
"The command \"%s\" is only available in GUI mode": [
"A(z) „%s” parancs csak GUI módban érhető el"
@@ -3850,9 +3889,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"A(z) „%s” nevű jegyzet sikeresen vissza lett állítva a(z) „%s” nevű jegyzetfüzetbe."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"A jegyzet Markdown formátumba lett konvertálva, és az eredeti jegyzet át lett helyezve a kukába"
],
"The note was successfully moved to the trash.": [
"A jegyzet sikeresen át lett helyezve a kukába.",
"A jegyzetek sikeresen át lettek helyezve a kukába."
@@ -4101,10 +4137,10 @@
"Szerkesztőfül billentyűs navigációja be/ki"
],
"Toggle editors": [
"Átváltás a szerkesztők között"
"Váltás a szerkesztők között"
],
"Toggle external editing": [
"Átváltás külső szerkesztőre"
"Váltás külső szerkesztőre"
],
"Toggle menu bar": [
"Menüsáv be/ki"
@@ -4154,6 +4190,9 @@
"Try it now": [
"Próbálja ki most"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"A paranccsal kapcsolatos további információkért írja be a `help [command]` parancsot; vagy a teljes használati információért írja be a `help all` parancsot."
],

View File

@@ -162,7 +162,7 @@
"[Tidak ada]"
],
"A brief description of the image:": [
""
"Penjelasan singkat tentang gambar:"
],
"A comma-separated list of words. May be used for uncommon words, to help voice typing spell them correctly.": [
"Daftar kata yang dipisah dengan koma. Dapat digunakan untuk kata-kata yang tidak umum, untuk membantu pengetikan suara mengejanya dengan benar."
@@ -179,6 +179,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Tentang"
],
@@ -237,7 +240,7 @@
"Tambahkan isi"
],
"Add column": [
""
"Tambah kolom"
],
"Add new": [
"Tambah baru"
@@ -248,6 +251,9 @@
"Add recipient:": [
"Tambah penerima:"
],
"Add row": [
"Tambah baris"
],
"Add tags:": [
"Tambah label:"
],
@@ -336,7 +342,7 @@
"Telah ditemukan gambar yang disimpan otomatis. Lampirkan salinan gambar ke catatan?"
],
"An error occurred while sending the response. This can happen if the app is offline or cannot connect to the server.\nError: %s": [
""
"Sebuah galat terjadi ketika mengirim tanggapan. Hal ini dapat terjadi jika aplikasi sedang luring atau tidak dapat tersambung ke server.\nGalat: %s"
],
"An error occurred: %s": [
"Sebuah galat telah terjadi: %s"
@@ -461,6 +467,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Tebal"
],
@@ -599,6 +608,9 @@
"Checking... Please wait.": [
"Sedang memeriksa… Mohon tunggu."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Pilih salah satu"
],
@@ -665,9 +677,6 @@
"Code View": [
"Tampilan Kode"
],
"Code:": [
"Kode:"
],
"Collaborate on a notebook with others": [
"Bekerja sama pada sebuah buku catatan dengan orang lain"
],
@@ -677,6 +686,9 @@
"Collapse all notebooks": [
"Lipat semua buku catatan"
],
"Collapse title": [
"Lipat judul"
],
"Collapsed": [
"Terlipat"
],
@@ -692,6 +704,9 @@
"Command": [
"Perintah"
],
"COMMAND": [
""
],
"Command palette": [
"Palet perintah"
],
@@ -779,9 +794,6 @@
"Convert it": [
"Ubah"
],
"Convert note to Markdown": [
"Ubah catatan ke Markdown"
],
"Convert to note": [
"Ubah ke catatan"
],
@@ -836,9 +848,6 @@
"Could not connect to plugin repository.": [
"Tidak dapat terhubung ke repositori plugin."
],
"Could not convert note to Markdown: %s": [
"Tidak dapat mengubah catatan ke Markdown: %s"
],
"Could not export notes: %s": [
"Tidak dapat mengekspor catatan: %s"
],
@@ -1013,6 +1022,9 @@
"Delete attachment \"%s\"?": [
"Hapus lampiran \"%s\"?"
],
"Delete column": [
"Hapus kolom"
],
"Delete expired sessions": [
"Hapus sesi kadaluarsa"
],
@@ -1040,9 +1052,15 @@
"Delete profile \"%s\"": [
"Hapus profil \"%s\"?"
],
"Delete row": [
"Hapus baris"
],
"Delete selected notes": [
"Hapus catatan terpilih"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Hapus buku catatan Kotak Masuk?\n\nJika Anda menghapus buku catatan Kotak Masuk, sebarang email yang baru saja terkirim mungkin akan hilang."
],
@@ -1148,6 +1166,9 @@
"Displays the complete information about note.": [
"Menampilkan informasi lengkap tentang catatan."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Menampilkan catatan yang diberikan."
],
@@ -1173,7 +1194,7 @@
"Jangan sampai kehilangan kata sandi, sebagai alasan keamanan, ini akan menjadi *satu-satunya* cara untuk mendekripsi data! Untuk menyalakan enkripsi, masukkan kata sandi Anda di bawah."
],
"Do you find the Joplin web app useful?": [
""
"Apakah aplikasi web Joplin berguna untuk Anda?"
],
"Document scanner: Title template": [
"Pemindai dokumen: Templat judul"
@@ -1532,6 +1553,9 @@
"Expand all notebooks": [
"Buka semua buku catatan"
],
"Expand title": [
"Bentangkan judul"
],
"Expanded": [
"Terbuka"
],
@@ -1596,7 +1620,7 @@
"Penanda fitur"
],
"Feedback": [
""
"Umpan balik"
],
"Fetched items: %d/%d.": [
"Benda yang diambil: %d/%d."
@@ -2009,6 +2033,9 @@
"Joplin Server": [
"Server Joplin"
],
"Joplin Server (SAML)": [
"Joplin Server (SAML)"
],
"Joplin Server Business": [
"Bisnis Joplin Server"
],
@@ -2028,7 +2055,7 @@
"Otentikasi SSO Joplin"
],
"Joplin supports saving the location at which notes are saved or created. Do you want to enable it? This can be changed at any time in settings.": [
""
"Joplin mendukung penyimpanan lokasi tempat di mana catatan disimpan atau dibuat. Apakah Anda ingin menyalakannya? Ini dapat diubah kapan saja di pengaturan."
],
"Joplin Web Clipper allows saving web pages and screenshots from your browser to Joplin.": [
"Web Clipper Joplin memungkinkan untuk menyimpan halaman web dan tangkapan layar dari peramban web Anda ke Joplin."
@@ -2057,11 +2084,14 @@
"Keychain Supported: %s": [
"Rantai kunci yang Didukung: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Kunci-kunci yang perlu ditingkatkan"
],
"Label": [
""
"Cap"
],
"Landscape": [
"Mendatar"
@@ -2201,6 +2231,9 @@
"Manage your plugins": [
"Kelola plugin Anda"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Mengelola konfigurasi E2EE. Perintah yang tersedia yaitu `enable`, `disable`, `decrypt`, `status`, `decrypt-file` dan `target-status`."
],
@@ -2216,6 +2249,9 @@
"Markdown editor": [
"Penyunting Markdown"
],
"Markdown editor: Highlight active line": [
"Penyunting Markdown: Sorot baris saat ini"
],
"Markdown editor: Render images": [
"Penyunting Markdown: Tampilkan gambar"
],
@@ -2453,6 +2489,9 @@
"No updates available": [
"Tidak ada pembaruan tersedia"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Tidak ada"
],
@@ -2475,7 +2514,7 @@
"Tidak sekarang"
],
"Not useful": [
""
"Tidak berguna"
],
"note": [
"catatan"
@@ -2525,6 +2564,9 @@
"Note list style": [
"Gaya daftar catatan"
],
"Note not published: %s": [
"Catatan yang tidak diterbitkan: %s"
],
"Note preview": [
"Pratinjau catatan"
],
@@ -2660,6 +2702,9 @@
"Open Sync Wizard...": [
"Buka Pemandu Penyelarasan…"
],
"Open-source licences": [
""
],
"Open...": [
"Buka..."
],
@@ -2681,11 +2726,14 @@
"Options": [
"Pilihan"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Daftar berurutan"
],
"Other": [
""
"Lainnya"
],
"Other applications...": [
"Aplikasi lain..."
@@ -2936,6 +2984,9 @@
"Publish Note": [
"Terbitkan catatan"
],
"Publish note \"%s\" (in notebook \"%s\")?": [
"Terbitkan catatan \"%s\" (pada buku catatan \"%s\")?"
],
"Publish note...": [
"Menerbitkan catatan…"
],
@@ -2948,8 +2999,11 @@
"Publish/unpublish": [
"Terbitkan/Batal terbitkan"
],
"Published at URL: %s": [
"Diterbitkan pada URL: %s"
],
"Publishes a note to Joplin Server or Joplin Cloud": [
""
"Menerbitkan sebuah catatan ke Joplin Server atau Joplin Cloud"
],
"QR Code": [
"Kode QR"
@@ -2996,6 +3050,9 @@
"Recipients:": [
"Penerima:"
],
"Recognise text:": [
"Mengenali teks:"
],
"Recognize handwritten image": [
"Kenali gambar dari tulisan tangan"
],
@@ -3224,6 +3281,9 @@
"Save geo-location with notes": [
"Simpan geolokasi dengan catatan"
],
"Save geolocation?": [
"Simpan geolokasi?"
],
"Scan notebook": [
"Pindai buku catatan"
],
@@ -3294,11 +3354,14 @@
"Pilih buku catatan"
],
"Select one of the other supported sync targets.": [
""
"Pilih salah satu dari sasaran penyelarasan lainnya yang didukung."
],
"Select parent notebook": [
"Pilih buku catatan induk"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Dipilih: %s"
],
@@ -3503,6 +3566,9 @@
"Source: ": [
"Sumber: "
],
"SPACE": [
""
],
"Spacer": [
"Pemberi ruang"
],
@@ -3633,7 +3699,7 @@
"Beralih ke [notebook] - semua kegiatan selanjutnya akan terjadi dalam buku catatan ini."
],
"Sync": [
""
"Selaraskan"
],
"Sync as many devices as you want": [
"Selaraskan ke banyak perangkat sebanyak yang Anda mau"
@@ -3713,6 +3779,9 @@
"Take photo": [
"Ambil foto"
],
"Take survey": [
"Ikut survei"
],
"Task \"%s\" failed with error: %s": [
"Tugas “%s” gagal dengan galat: %s"
],
@@ -3732,7 +3801,7 @@
"Perintah penyunting teks"
],
"Thank you for the feedback!\nDo you have time to complete a short survey?": [
""
"Terima kasih atas umpan balik yang telah diberikan!\nApakah Anda bersedia untuk mengikuti survei singkat?"
],
"The active profile cannot be deleted. Switch to a different profile and try again.": [
"Profil yang aktif tidak dapat dihapus. Pindah ke profil yang berbeda dan coba kembali."
@@ -3806,9 +3875,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Catatan \"%s\" telah berhasil dipulihkan ke buku catatan \"%s\"."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Catatan telah diubah ke Markdown dan catatan asli telah dipindahkan ke tong sampah"
],
"The note was successfully moved to the trash.": [
"Catatan telah berhasil dipindahkan ke tempat sampah."
],
@@ -4106,6 +4172,9 @@
"Try it now": [
"Coba sekarang"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Ketik `help [command]` untuk informasi lebih banyak tentang sebuah perintah; atau ketik `help all` untuk informasi penggunaan secara lengkap."
],
@@ -4127,6 +4196,9 @@
"Unable to share log data. Reason: %s": [
"Tidak dapat membagikan data log. Alasan: %s"
],
"Unable to share note data. Reason: %s": [
"Tidak dapat membagikan data catatan. Alasan: %s"
],
"Unchecked": [
"Tidak diperiksa"
],
@@ -4272,7 +4344,7 @@
"Digunakan di mana fonta lebar tetap diperlukan untuk meletakkan teks dengan jelas (misalnya tabel, kotak centang, kode). Jika tidak ditemukan, fonta generik monospace (lebar tetap) digunakan."
],
"Useful": [
""
"Berguna"
],
"User deletions": [
"Dihapus oleh pengguna"
@@ -4380,7 +4452,7 @@
"Ketika membuat tugas baru:"
],
"When enabled, requests that the images in the note be transcribed with a higher-quality on-server transcription service. Requires sync with a copy of the desktop app.": [
""
"Ketika dinyalakan, minta agar gambar pada catatan untuk ditranskripsi dengan sebuah layanan transkripsi pada server yang berkualitas lebih tinggi. Memerlukan penyelarasan dengan sebuah salinan dari aplikasi destop."
],
"When enabled, the application will scan your attachments and extract the text from it. This will allow you to search for text in these attachments.": [
"Ketika dinyalakan, aplikasi akan memindai lampiran Anda dan mengambil teks darinya. Ini akan membuat Anda mampu mencari teks pada lampiran tersebut."

View File

@@ -44,7 +44,7 @@ locales['vi'] = require('./vi.json');
locales['zh_CN'] = require('./zh_CN.json');
locales['zh_TW'] = require('./zh_TW.json');
stats['ar'] = {
percentDone: 58,
percentDone: 57,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -64,7 +64,7 @@ stats['eu'] = {
},
};
stats['nb_NO'] = {
percentDone: 58,
percentDone: 57,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -94,7 +94,7 @@ stats['bg_BG'] = {
},
};
stats['ca'] = {
percentDone: 100,
percentDone: 98,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -114,7 +114,7 @@ stats['hr_HR'] = {
},
};
stats['cs_CZ'] = {
percentDone: 65,
percentDone: 64,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -144,7 +144,7 @@ stats['de_DE'] = {
},
};
stats['et_EE'] = {
percentDone: 29,
percentDone: 28,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -168,7 +168,7 @@ stats['en_US'] = {
},
};
stats['es_ES'] = {
percentDone: 100,
percentDone: 98,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -188,7 +188,7 @@ stats['eo'] = {
},
};
stats['fi_FI'] = {
percentDone: 89,
percentDone: 87,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -198,7 +198,7 @@ stats['fi_FI'] = {
},
};
stats['fr_FR'] = {
percentDone: 98,
percentDone: 100,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -208,7 +208,7 @@ stats['fr_FR'] = {
},
};
stats['gl_ES'] = {
percentDone: 91,
percentDone: 89,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -228,7 +228,7 @@ stats['id_ID'] = {
},
};
stats['it_IT'] = {
percentDone: 79,
percentDone: 78,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -238,7 +238,7 @@ stats['it_IT'] = {
},
};
stats['hu_HU'] = {
percentDone: 99,
percentDone: 98,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -248,7 +248,7 @@ stats['hu_HU'] = {
},
};
stats['nl_BE'] = {
percentDone: 86,
percentDone: 84,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -258,7 +258,7 @@ stats['nl_BE'] = {
},
};
stats['nl_NL'] = {
percentDone: 79,
percentDone: 89,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -268,7 +268,7 @@ stats['nl_NL'] = {
},
};
stats['fa'] = {
percentDone: 79,
percentDone: 78,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -278,7 +278,7 @@ stats['fa'] = {
},
};
stats['pl_PL'] = {
percentDone: 93,
percentDone: 92,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -288,7 +288,7 @@ stats['pl_PL'] = {
},
};
stats['pt_BR'] = {
percentDone: 91,
percentDone: 89,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -298,7 +298,7 @@ stats['pt_BR'] = {
},
};
stats['pt_PT'] = {
percentDone: 79,
percentDone: 78,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -308,7 +308,7 @@ stats['pt_PT'] = {
},
};
stats['ro_MD'] = {
percentDone: 99,
percentDone: 97,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -318,7 +318,7 @@ stats['ro_MD'] = {
},
};
stats['ro_RO'] = {
percentDone: 99,
percentDone: 97,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -328,7 +328,7 @@ stats['ro_RO'] = {
},
};
stats['sl_SI'] = {
percentDone: 53,
percentDone: 52,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -338,7 +338,7 @@ stats['sl_SI'] = {
},
};
stats['sk_SK'] = {
percentDone: 100,
percentDone: 98,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -358,7 +358,7 @@ stats['sv'] = {
},
};
stats['th_TH'] = {
percentDone: 24,
percentDone: 23,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -368,7 +368,7 @@ stats['th_TH'] = {
},
};
stats['vi'] = {
percentDone: 51,
percentDone: 50,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -378,7 +378,7 @@ stats['vi'] = {
},
};
stats['tr_TR'] = {
percentDone: 99,
percentDone: 97,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -388,7 +388,7 @@ stats['tr_TR'] = {
},
};
stats['uk_UA'] = {
percentDone: 85,
percentDone: 84,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -398,7 +398,7 @@ stats['uk_UA'] = {
},
};
stats['el_GR'] = {
percentDone: 79,
percentDone: 86,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -408,7 +408,7 @@ stats['el_GR'] = {
},
};
stats['ru_RU'] = {
percentDone: 98,
percentDone: 96,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -428,7 +428,7 @@ stats['sr_RS'] = {
},
};
stats['zh_CN'] = {
percentDone: 98,
percentDone: 96,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -438,7 +438,7 @@ stats['zh_CN'] = {
},
};
stats['zh_TW'] = {
percentDone: 79,
percentDone: 78,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -448,7 +448,7 @@ stats['zh_TW'] = {
},
};
stats['ja_JP'] = {
percentDone: 72,
percentDone: 71,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;
@@ -458,7 +458,7 @@ stats['ja_JP'] = {
},
};
stats['ko'] = {
percentDone: 73,
percentDone: 72,
pluralForms: function(n) {
// AUTO-GENERATED by build-translations.ts
var plural;

View File

@@ -149,6 +149,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Informazioni"
],
@@ -401,6 +404,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Grassetto"
],
@@ -530,6 +536,9 @@
"Checking... Please wait.": [
"Controllo... Attendere per favore."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Scegli un'opzione"
],
@@ -608,6 +617,9 @@
"Command": [
"Comando"
],
"COMMAND": [
""
],
"Command palette": [
"Comandi"
],
@@ -915,6 +927,9 @@
"Delete selected notes": [
"Eliminare le note selezionate"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Eliminare il taccuino della Posta in arrivo?\n\nSe elimini il taccuino della posta in arrivo, tutti i messaggi di posta elettronica recentemente inviati ad esso potrebbero andare perduti."
],
@@ -1005,6 +1020,9 @@
"Displays the complete information about note.": [
"Mostra le informazioni complete sulla nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Mostra la seguente nota."
],
@@ -1837,6 +1855,9 @@
"Keychain Supported: %s": [
"Portachiavi supportato: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Chiavi master che devono essere aggiornate"
],
@@ -1967,6 +1988,9 @@
"Manage your plugins": [
"Gestisci plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gestisci la configurazione E2EE. I comandi sono `abilita`, `disabilita`, `decripta`, `stato`, `decripta-file` e `stato-target`."
],
@@ -2171,6 +2195,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Non è definito nessun editor di testo. Per favore impostalo usando `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nord"
],
@@ -2342,6 +2369,9 @@
"Open Sync Wizard...": [
"Apri la procedura guidata di sincronizzazione..."
],
"Open-source licences": [
""
],
"Open...": [
"Apri..."
],
@@ -2354,6 +2384,9 @@
"Options": [
"Opzioni"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista ordinata"
],
@@ -2888,6 +2921,9 @@
"Select parent notebook": [
"Seleziona il taccuino principale"
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -3065,6 +3101,9 @@
"Source: ": [
"Sorgente: "
],
"SPACE": [
""
],
"Spacer": [
"Separatore"
],
@@ -3631,6 +3670,9 @@
"Try it now": [
"Prova subito"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Digita `help [command]` per ottenere maggiori informazioni su un comando; o scrivi `help all` per le informazioni di utilizzo complete."
],

View File

@@ -143,6 +143,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"詳細"
],
@@ -386,6 +389,9 @@
"Beta": [
"ベータ版"
],
"Block code": [
""
],
"Bold": [
"太字"
],
@@ -515,6 +521,9 @@
"Checking... Please wait.": [
"確認中...お待ちください。"
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"オプションを選択"
],
@@ -587,6 +596,9 @@
"Command": [
"コマンド"
],
"COMMAND": [
""
],
"Command palette": [
"コマンドパレット"
],
@@ -884,6 +896,9 @@
"Delete selected notes": [
"選択したノートを削除"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Inboxノートブックを削除しますか?\n\nInboxノートブックを削除すると、最近メール送信によって作成したノートが失われる可能性があります。"
],
@@ -971,6 +986,9 @@
"Displays the complete information about note.": [
"ノートに関するすべての情報を表示します。"
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"選択したノートを表示します。"
],
@@ -1763,6 +1781,9 @@
"Keychain Supported: %s": [
"キーチェーンのサポート: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"アップグレードが必要なキー"
],
@@ -1883,6 +1904,9 @@
"Manage your plugins": [
"プラグインを管理"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"エンドツーエンド暗号化(E2EE)の設定コマンドです。`enable`, `disable`, `decrypt`, `status`, `decrypt-file`, `target-status` があります。"
],
@@ -2078,6 +2102,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"テキストエディターが定義されていません。`config editor <editor-path>`で設定を行ってください"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"なし"
],
@@ -2246,6 +2273,9 @@
"Open Sync Wizard...": [
"同期ウィザードを開く..."
],
"Open-source licences": [
""
],
"Open...": [
"開く..."
],
@@ -2258,6 +2288,9 @@
"Options": [
"オプション"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"番号付きリスト"
],
@@ -2750,6 +2783,9 @@
"Select parent notebook": [
"親ノートブックを選択"
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2912,6 +2948,9 @@
"Source: ": [
"ソース: "
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3449,6 +3488,9 @@
"Try it now": [
"今すぐ試す"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"コマンドのさらなる情報は、`help [command]`で見ることができます;または、`help all`ですべての使用方法の情報を表示できます。"
],

View File

@@ -146,6 +146,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"정보"
],
@@ -386,6 +389,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"굵게"
],
@@ -515,6 +521,9 @@
"Checking... Please wait.": [
"확인 중입니다... 잠시만 기다리세요."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"옵션 선택"
],
@@ -590,6 +599,9 @@
"Command": [
"명령"
],
"COMMAND": [
""
],
"Command palette": [
"명령 팔레트"
],
@@ -890,6 +902,9 @@
"Delete selected notes": [
"선택된 노트 삭제"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"인박스 노트북을 삭제하시겠습니까?\n\n인박스 노트북을 삭제하면 최근에 해당 노트북으로 전송된 모든 이메일이 손실될 수 있습니다."
],
@@ -980,6 +995,9 @@
"Displays the complete information about note.": [
"노트와 관련된 모든 정보를 표시합니다."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"주어진 노트를 표시합니다."
],
@@ -1769,6 +1787,9 @@
"Keychain Supported: %s": [
"키체인 지원: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"키 업그레이드가 필요합니다"
],
@@ -1886,6 +1907,9 @@
"Manage your plugins": [
"플러그인 관리"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"E2EE(종단간 암호화) 설정을 관리합니다. `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, `target-status`와 같은 명령들이 있습니다."
],
@@ -2084,6 +2108,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"텍스트 편집기가 지정되지 않았습니다. `config editor <editor-path>` 명령어로 지정해주세요"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"노드"
],
@@ -2246,6 +2273,9 @@
"Open Sync Wizard...": [
"동기화 마법사 열기..."
],
"Open-source licences": [
""
],
"Open...": [
"열기..."
],
@@ -2258,6 +2288,9 @@
"Options": [
"옵션"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"정렬 목록"
],
@@ -2768,6 +2801,9 @@
"Select parent notebook": [
"상위 노트북 선택"
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2936,6 +2972,9 @@
"Source: ": [
"원본: "
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3491,6 +3530,9 @@
"Try it now": [
"지금 시도하기"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"명령어에 관한 정보는 `help [command]`를 입력하시면 찾으실 수 있습니다. 'help all'을 입력하시면 완전한 명령어 용법에 대한 정보를 보실 수 있습니다."
],

View File

@@ -137,6 +137,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
""
],
@@ -362,6 +365,9 @@
"Beta": [
""
],
"Block code": [
""
],
"Bold": [
"Fet"
],
@@ -482,6 +488,9 @@
"Checking... Please wait.": [
"Sjekker… Vennligst vent."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Velg et alternativ"
],
@@ -554,6 +563,9 @@
"Command": [
"Kommando"
],
"COMMAND": [
""
],
"Command palette": [
"Kommandomeny"
],
@@ -810,6 +822,9 @@
"Delete plugin \"%s\"?": [
"Slett utvidelse \"%s\"?"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
""
],
@@ -894,6 +909,9 @@
"Displays the complete information about note.": [
"Viser den komplette informasjonen om notatet."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Viser det valgte notatet."
],
@@ -1630,6 +1648,9 @@
"Keychain Supported: %s": [
"Nøkkelring støttet: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Nøkler som må oppgraderes"
],
@@ -1727,6 +1748,9 @@
"Manage your plugins": [
"Administrer dine utvidelser"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Håndter E2EE-konfigurasjon. Tilgjengelige kommandoer er: `enable`(aktiver), `disable`(lukk), `decrypt`(dekrypter), `status` og `target-status` (mottager-status)."
],
@@ -1910,6 +1934,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Ingen teksteditor er valgt. Velg en ved å bruke `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nord"
],
@@ -2060,6 +2087,9 @@
"Open Sync Wizard...": [
"Åpne Sync Wizard…"
],
"Open-source licences": [
""
],
"Open...": [
"Åpne..."
],
@@ -2072,6 +2102,9 @@
"Options": [
"Generelle innstillinger"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Other": [
""
],
@@ -2516,6 +2549,9 @@
"Select one of the other supported sync targets.": [
""
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -2666,6 +2702,9 @@
"Source: ": [
"Kilde: "
],
"SPACE": [
""
],
"Spacer": [
""
],
@@ -3161,6 +3200,9 @@
"Try again": [
"Forsøk igjen"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Skriv inn `help [kommando]` for å få mer informasjon om en kommando. eller skriv inn `help all` for fullstendig brukerinformasjon."
],

View File

@@ -152,6 +152,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Over"
],
@@ -410,6 +413,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Vet"
],
@@ -542,6 +548,9 @@
"Checking... Please wait.": [
"Verifiëren ... Even geduld."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Kies een optie"
],
@@ -626,6 +635,9 @@
"Command": [
"Commando"
],
"COMMAND": [
""
],
"Command palette": [
"Commandopalet"
],
@@ -952,6 +964,9 @@
"Delete selected notes": [
"Geselecteerde notities verwijderen"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Het Inbox notitieboek verwijderen?\n\nAls je het Inbox notitieboek verwijdert, gaan emails die er recent naar verzonden zijn mogelijk verloren."
],
@@ -1054,6 +1069,9 @@
"Displays the complete information about note.": [
"Toont de volledige informatie over notitie."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Toont de opgegeven notitie."
],
@@ -1916,6 +1934,9 @@
"Keychain Supported: %s": [
"Keychain ondersteund: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Sleutels die upgrade nodig hebben"
],
@@ -2049,6 +2070,9 @@
"Manage your plugins": [
"Beheer je plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Beheert E2EE-configuratie. Commando's zijn `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, en `target-status`."
],
@@ -2271,6 +2295,9 @@
"No updates available": [
"Geen updates beschikbaar"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Geen"
],
@@ -2451,6 +2478,9 @@
"Open Sync Wizard...": [
"Sync Wizard openen..."
],
"Open-source licences": [
""
],
"Open...": [
"Openen..."
],
@@ -2472,6 +2502,9 @@
"Options": [
"Opties"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Geordende lijst"
],
@@ -3036,6 +3069,9 @@
"Select parent notebook": [
"Selecteer hoofdnotitieboek"
],
"Select the type of file to be imported:": [
""
],
"Selection deleted": [
"Selectie verwijderd"
],
@@ -3231,6 +3267,9 @@
"Source: ": [
"Bron: "
],
"SPACE": [
""
],
"Spacer": [
"Tussenstuk"
],
@@ -3809,6 +3848,9 @@
"Try it now": [
"Probeer het nu"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Typ `help [commando]` voor meer informatie over een commando; of typ `help all` voor de volledige gebruiksinformatie."
],

File diff suppressed because it is too large Load Diff

View File

@@ -191,6 +191,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Informacje"
],
@@ -464,6 +467,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Pogrubienie"
],
@@ -602,6 +608,9 @@
"Checking... Please wait.": [
"Sprawdzanie... Proszę czekać."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Wybierz opcję"
],
@@ -692,6 +701,9 @@
"Command": [
"Polecenie"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta poleceń"
],
@@ -1023,6 +1035,9 @@
"Delete selected notes": [
"Usuń wybrane notatki"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Usunąć notatnik „Skrzynka odbiorcza”?\n\nJeśli usuniesz notatnik „Skrzynka odbiorcza”, wszystkie wiadomości e-mail, które zostały ostatnio wysłane do tej skrzynki, mogą zostać utracone."
],
@@ -1128,6 +1143,9 @@
"Displays the complete information about note.": [
"Wyświetla pełne informacje o notatce."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Wyświetla podaną notatkę."
],
@@ -2009,6 +2027,9 @@
"Keychain Supported: %s": [
"Obsługiwany menadżer kluczy: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Klucze wymagające aktualizacji"
],
@@ -2157,6 +2178,9 @@
"Manage your plugins": [
"Zarządzaj wtyczkami"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Zarządza konfiguracją E2EE (szyfrowanie end-to-end). Dostępne polecenia: `enable`, `disable`, `decrypt`, `status`, `decrypt-file` oraz `target-status`."
],
@@ -2402,6 +2426,9 @@
"No updates available": [
"Brak dostępnych aktualizacji"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Brak"
],
@@ -2597,6 +2624,9 @@
"Open Sync Wizard...": [
"Otwórz kreatora synchronizacji..."
],
"Open-source licences": [
""
],
"Open...": [
"Otwórz..."
],
@@ -2618,6 +2648,9 @@
"Options": [
"Opcje"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista uporządkowana"
],
@@ -3205,6 +3238,9 @@
"Select parent notebook": [
"Wybierz notatnik nadrzędny"
],
"Select the type of file to be imported:": [
""
],
"Selection deleted": [
"Wybór usunięty"
],
@@ -3406,6 +3442,9 @@
"Source: ": [
"Źródło: "
],
"SPACE": [
""
],
"Spacer": [
"Separator"
],
@@ -4004,6 +4043,9 @@
"Try it now": [
"Wypróbuj teraz"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Wpisz `help [polecenie]`, aby uzyskać więcej informacji na temat polecenia, lub `help all`, aby uzyskać pełną informację na temat użycia."
],

View File

@@ -179,6 +179,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Sobre"
],
@@ -443,6 +446,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Negrito"
],
@@ -581,6 +587,9 @@
"Checking... Please wait.": [
"Verificando... Por favor aguarde."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Escolha uma opção"
],
@@ -671,6 +680,9 @@
"Command": [
"Comando"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta de comandos"
],
@@ -1000,6 +1012,9 @@
"Delete selected notes": [
"Excluir as notas selecionadas"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Excluir o caderno \"Inbox\"?\n\nAo excluir o caderno \"Inbox\", e-mails recentemente enviados a ele podem ser perdidos."
],
@@ -1105,6 +1120,9 @@
"Displays the complete information about note.": [
"Exibe a informação completa sobre a nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Exibe a nota informada."
],
@@ -1982,6 +2000,9 @@
"Keychain Supported: %s": [
"Keychain Suportada: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Chaves que necessitam de atualização"
],
@@ -2118,6 +2139,9 @@
"Manage your plugins": [
"Gerencie seus plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gerencia a configuração E2EE. Os comandos são `enable`, `disable`, `decrypt`, `status`, `decrypt-file` e `target-status`."
],
@@ -2356,6 +2380,9 @@
"No updates available": [
"Sem atualizações disponíveis"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Nenhum"
],
@@ -2551,6 +2578,9 @@
"Open Sync Wizard...": [
"Abrir o assistente de sincronização..."
],
"Open-source licences": [
""
],
"Open...": [
"Abrir..."
],
@@ -2572,6 +2602,9 @@
"Options": [
"Opções"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista ordenada"
],
@@ -3149,6 +3182,9 @@
"Select parent notebook": [
"Selecione o caderno pai"
],
"Select the type of file to be imported:": [
""
],
"Selection deleted": [
"Seleção apagada"
],
@@ -3347,6 +3383,9 @@
"Source: ": [
"Origem: "
],
"SPACE": [
""
],
"Spacer": [
"Espaçador"
],
@@ -3946,6 +3985,9 @@
"Try it now": [
"Experimentar"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Digite `help [comando]` para obter mais informações sobre um comando; ou digite `help all` para informações completas de uso."
],

View File

@@ -149,6 +149,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Sobre"
],
@@ -401,6 +404,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Negrito"
],
@@ -530,6 +536,9 @@
"Checking... Please wait.": [
"A verificar… Por favor, aguarde."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Escolher a opção"
],
@@ -608,6 +617,9 @@
"Command": [
"Comando"
],
"COMMAND": [
""
],
"Command palette": [
"Painel de comandos"
],
@@ -915,6 +927,9 @@
"Delete selected notes": [
"Eliminar notas selecionadas"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Apagar o caderno Caixa de Entrada?\n\nSe apagar o caderno caixa de entrada, qualquer email enviado recentemente será perdido."
],
@@ -1005,6 +1020,9 @@
"Displays the complete information about note.": [
"Apresenta a informação completa relativamente à nota."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Apresenta a nota especificada."
],
@@ -1837,6 +1855,9 @@
"Keychain Supported: %s": [
"Porta-Chaves Suportado: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Chaves que necessitam de atualização"
],
@@ -1967,6 +1988,9 @@
"Manage your plugins": [
"Gerir os seus plugins"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gere a configuração E2EE. Os comandos são `enable`, `disable`, `decrypt`, `status`, `decrypt-file` e `target-status`."
],
@@ -2171,6 +2195,9 @@
"No text editor is defined. Please set it using `config editor <editor-path>`": [
"Nenhum editor de texto está definido. Por favor, defina-o utilizando `config editor <editor-path>`"
],
"No URL for SAML authentication set.": [
""
],
"Nord": [
"Nórdico"
],
@@ -2342,6 +2369,9 @@
"Open Sync Wizard...": [
"Abrir Assistente de Sincronização..."
],
"Open-source licences": [
""
],
"Open...": [
"Abrir..."
],
@@ -2354,6 +2384,9 @@
"Options": [
"Opções"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Lista ordenada"
],
@@ -2888,6 +2921,9 @@
"Select parent notebook": [
"Selecionar caderno pai"
],
"Select the type of file to be imported:": [
""
],
"Self-hosted": [
""
],
@@ -3065,6 +3101,9 @@
"Source: ": [
"Origem: "
],
"SPACE": [
""
],
"Spacer": [
"Espaçador"
],
@@ -3631,6 +3670,9 @@
"Try it now": [
"Tentar agora"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Digite `help [command]` para mais informação relativamente ao comando; ou digite `help all` para informações completas de utilização."
],

View File

@@ -191,6 +191,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Despre"
],
@@ -473,6 +476,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Aldin"
],
@@ -611,6 +617,9 @@
"Checking... Please wait.": [
"Se verifică... Te rog să aștepți."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Selectează o opțiune"
],
@@ -677,9 +686,6 @@
"Code View": [
"Vizualizare code"
],
"Code:": [
"Cod:"
],
"Collaborate on a notebook with others": [
"Colaborează la caiet cu alte persoane"
],
@@ -707,6 +713,9 @@
"Command": [
"Comandă"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta de comenzi"
],
@@ -796,9 +805,6 @@
"Convert it": [
"Convertește-o"
],
"Convert note to Markdown": [
"Convertește notița în Markdown"
],
"Convert to note": [
"Convertește în notiță"
],
@@ -855,9 +861,6 @@
"Could not connect to plugin repository.": [
"Nu s-a putut conecta la repozitoriul de plugin-uri."
],
"Could not convert note to Markdown: %s": [
"Nu s-a putut converti notița în Markdown: %s"
],
"Could not export notes: %s": [
"Nu s-au putut exporta notițele: %s"
],
@@ -1062,6 +1065,9 @@
"Delete selected notes": [
"Șterge aceste notițe"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Ștergi caietul Inbox?\n\nDacă ștergi caietul de notițe Inbox, orice e-mail trimis recent în acesta poate fi pierdut."
],
@@ -1167,6 +1173,9 @@
"Displays the complete information about note.": [
"Afișează informațiile complete despre notiță."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Afișează notițele specificate."
],
@@ -2084,6 +2093,9 @@
"Keychain Supported: %s": [
"Lanț de chei suportat: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Chei care trebuie actualizate"
],
@@ -2232,6 +2244,9 @@
"Manage your plugins": [
"Gestionează-ți plugin-urile"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gestionează configurația E2EE. Comenzile sînt `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`."
],
@@ -2489,6 +2504,9 @@
"No updates available": [
"Nu există actualizări"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Niciuna"
],
@@ -2699,6 +2717,9 @@
"Open Sync Wizard...": [
"Deschide ghidul de sincronizare…"
],
"Open-source licences": [
""
],
"Open...": [
"Deschide..."
],
@@ -2720,6 +2741,9 @@
"Options": [
"Opțiuni"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Listă ordonată"
],
@@ -3352,6 +3376,9 @@
"Select parent notebook": [
"Selectează caietul părinte"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Selectat: %s"
],
@@ -3556,6 +3583,9 @@
"Source: ": [
"Sursă: "
],
"SPACE": [
""
],
"Spacer": [
"Distanțier"
],
@@ -3864,9 +3894,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Notița „%s” a fost restaurată cu succes în caietul „%s”."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Notița a fost convertită în Markdown și notița originală a fost mutată în coșul de gunoi"
],
"The note was successfully moved to the trash.": [
"Notița a fost mutată cu succes în coșul de gunoi.",
"Notițele au fost mutate cu succes în coșul de gunoi.",
@@ -4172,6 +4199,9 @@
"Try it now": [
"Încearcă acum"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Tastează `help [command]` pentru mai multe informații despre o comandă; sau tastează `help all` pentru informații complete de utilizare."
],

View File

@@ -191,6 +191,9 @@
"A5": [
"A5"
],
"ABC musical notation: Options": [
""
],
"About": [
"Despre"
],
@@ -473,6 +476,9 @@
"Beta": [
"Beta"
],
"Block code": [
""
],
"Bold": [
"Aldin"
],
@@ -611,6 +617,9 @@
"Checking... Please wait.": [
"Se verifică... Te rog să aștepți."
],
"Chinese/Japanese/Korean characters": [
""
],
"Choose an option": [
"Selectează o opțiune"
],
@@ -677,9 +686,6 @@
"Code View": [
"Vizualizare code"
],
"Code:": [
"Cod:"
],
"Collaborate on a notebook with others": [
"Colaborează la caiet cu alte persoane"
],
@@ -707,6 +713,9 @@
"Command": [
"Comandă"
],
"COMMAND": [
""
],
"Command palette": [
"Paleta de comenzi"
],
@@ -796,9 +805,6 @@
"Convert it": [
"Convertește-o"
],
"Convert note to Markdown": [
"Convertește notița în Markdown"
],
"Convert to note": [
"Convertește în notiță"
],
@@ -855,9 +861,6 @@
"Could not connect to plugin repository.": [
"Nu s-a putut conecta la repozitoriul de plugin-uri."
],
"Could not convert note to Markdown: %s": [
"Nu s-a putut converti notița în Markdown: %s"
],
"Could not export notes: %s": [
"Nu s-au putut exporta notițele: %s"
],
@@ -1062,6 +1065,9 @@
"Delete selected notes": [
"Șterge aceste notițe"
],
"Delete tag \"%s\"?\n\nAll notes associated with this tag will remain, but the tag will be removed from all notes.": [
""
],
"Delete the Inbox notebook?\n\nIf you delete the inbox notebook, any email that's recently been sent to it may be lost.": [
"Ștergi caietul Inbox?\n\nDacă ștergi caietul de notițe Inbox, orice e-mail trimis recent în acesta poate fi pierdut."
],
@@ -1167,6 +1173,9 @@
"Displays the complete information about note.": [
"Afișează informațiile complete despre notiță."
],
"Displays the configured keyboard shortcuts.": [
""
],
"Displays the given note.": [
"Afișează notițele specificate."
],
@@ -2084,6 +2093,9 @@
"Keychain Supported: %s": [
"Lanț de chei suportat: %s"
],
"KEYS": [
""
],
"Keys that need upgrading": [
"Chei care trebuie actualizate"
],
@@ -2232,6 +2244,9 @@
"Manage your plugins": [
"Gestionează-ți plugin-urile"
],
"Manage your profiles. You can rename or delete profiles. The active profile cannot be deleted.": [
""
],
"Manages E2EE configuration. Commands are `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`.": [
"Gestionează configurația E2EE. Comenzile sunt `enable`, `disable`, `decrypt`, `status`, `decrypt-file`, and `target-status`."
],
@@ -2489,6 +2504,9 @@
"No updates available": [
"Nu există actualizări"
],
"No URL for SAML authentication set.": [
""
],
"None": [
"Niciuna"
],
@@ -2699,6 +2717,9 @@
"Open Sync Wizard...": [
"Deschide ghidul de sincronizare…"
],
"Open-source licences": [
""
],
"Open...": [
"Deschide..."
],
@@ -2720,6 +2741,9 @@
"Options": [
"Opțiuni"
],
"Options that should be used whenever rendering ABC code. It must be a JSON5 object. The full list of options is available at: %s": [
""
],
"Ordered list": [
"Listă ordonată"
],
@@ -3352,6 +3376,9 @@
"Select parent notebook": [
"Selectează caietul părinte"
],
"Select the type of file to be imported:": [
""
],
"Selected: %s": [
"Selectat: %s"
],
@@ -3556,6 +3583,9 @@
"Source: ": [
"Sursă: "
],
"SPACE": [
""
],
"Spacer": [
"Distanțier"
],
@@ -3864,9 +3894,6 @@
"The note \"%s\" has been successfully restored to the notebook \"%s\".": [
"Notița „%s” a fost restaurată cu succes în caietul „%s”."
],
"The note has been converted to Markdown and the original note has been moved to the trash": [
"Notița a fost convertită în Markdown și notița originală a fost mutată în coșul de gunoi"
],
"The note was successfully moved to the trash.": [
"Notița a fost mutată cu succes în coșul de gunoi.",
"Notițele au fost mutate cu succes în coșul de gunoi.",
@@ -4172,6 +4199,9 @@
"Try it now": [
"Încearcă acum"
],
"TYPE": [
""
],
"Type `help [command]` for more information about a command; or type `help all` for the complete usage information.": [
"Tastează `help [command]` pentru mai multe informații despre o comandă; sau tastează `help all` pentru informații complete de utilizare."
],

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