1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-08-24 20:19:10 +02:00

Compare commits

...

191 Commits

Author SHA1 Message Date
Laurent Cozic
85355f8eda Android release v1.6.7 2021-01-21 11:25:45 +00:00
Laurent Cozic
1c696bf989 CLI v1.6.4 2021-01-21 10:02:05 +00:00
Laurent Cozic
7a8629c38d Cli: Fixed version number 2021-01-21 10:00:42 +00:00
Laurent Cozic
fc7bd41c10 Desktop release v1.6.8 2021-01-20 15:49:39 +00:00
Laurent Cozic
8d35298500 Desktop: Fixes #4305: Fixed infinite sync issue with OneDrive
- Disable support for unreliable OneDrive delta sync, and switched to basic sync
- More robust error handling to take into account how unreliable the OneDrive API became
2021-01-20 15:49:02 +00:00
Laurent Cozic
b74b849830 Desktop release v1.6.7 2021-01-11 22:18:24 +00:00
Caleb John
63a331c82f Desktop: Fixes #4338: Some commands were no longer working (#4343) 2021-01-11 22:17:55 +00:00
Laurent Cozic
7530d2e4bc CLI v1.6.3 2021-01-11 11:52:17 +00:00
Laurent Cozic
f678434411 Fixed deps 2021-01-11 11:51:53 +00:00
Laurent Cozic
9d547a58c9 CLI v1.6.2 2021-01-11 11:42:17 +00:00
Laurent Cozic
aa4905ab45 Releasing sub-packages 2021-01-11 11:40:56 +00:00
Laurent Cozic
b24eb5d09c ios-v10.6.2 2021-01-11 11:16:46 +00:00
Laurent Cozic
1bc56d0fa9 ios-v10.6.1 2021-01-11 11:16:17 +00:00
Laurent Cozic
a77d500bfa CLI v1.6.1 2021-01-11 11:10:58 +00:00
Laurent Cozic
8fea9ba193 Android release v1.6.6 2021-01-10 00:53:26 +00:00
Laurent Cozic
3fdcd3aaa6 Android release v1.6.5 2021-01-10 00:14:36 +00:00
Laurent
0629cb394c Doc: Resolves #4329: Mentioned that vim and emacs mode are not supported in Rich Text editor 2021-01-09 19:58:41 +00:00
Laurent Cozic
f58b7563e6 Desktop release v1.6.6 2021-01-09 13:17:23 +00:00
Laurent Cozic
d434723244 Desktop: Add way to install plugin from file 2021-01-09 13:14:39 +00:00
Laurent Cozic
fca8f71f4a Desktop release v1.6.5 2021-01-08 22:22:44 +00:00
Laurent Cozic
023170548f Plugins: Added joplin.settings.onChange event 2021-01-08 22:20:59 +00:00
Laurent Cozic
d75adc3740 Desktop: Fixed attaching local files that contain spaces in path
Ref: https://discourse.joplinapp.org/t/a-minor-bug-on-linking-to-local-files/13654
2021-01-08 18:33:22 +00:00
Laurent Cozic
0bf3531f51 Plugins: Fixes #4308: Fixed "exportFolders" command when exporting JEX file 2021-01-08 18:06:33 +00:00
Laurent Cozic
c9f40ea23f Desktop, Cli: Resolves #4310: Do not display error message when fixing ENEX resource mime type 2021-01-08 17:49:53 +00:00
Laurent Cozic
c8755839be Desktop, Cli: Resolves #4316: Improved support for bold and italic format when importing ENEX file 2021-01-08 17:40:18 +00:00
Laurent Cozic
c3e696db5a Merge branch 'release-1.5' into dev 2021-01-08 17:27:41 +00:00
Laurent Cozic
a0134005b7 Plugin Generator release v1.6.11 2021-01-08 16:45:44 +00:00
Laurent Cozic
b66d90bbcc Tools: Fixed config of demo plugins 2021-01-08 16:44:11 +00:00
Laurent Cozic
41edf5b2da Plugins: Updated types 2021-01-08 16:36:48 +00:00
Caleb John
c484c88715 Desktop: Fix issue that was preventing editor context menu from being refreshed (#4303) 2021-01-08 16:35:23 +00:00
Laurent Cozic
4a0fb124a7 Merge branch 'dev' of github.com:laurent22/joplin into dev 2021-01-08 16:32:11 +00:00
Laurent Cozic
ebbaa5177b Generator: Better handling of external scripts 2021-01-08 16:31:11 +00:00
Jonathan Heard
5d1dc224ca All: Fixes #4313: Fixed OneDrive issue that would require a full resync every time (#4324) 2021-01-08 16:07:03 +00:00
Helmut K. C. Tessarek
3626714403 actually toggle something ;-) (#4309)
* actually toggle something ;-)

* make ids a bit longer
2021-01-08 10:36:37 -05:00
JackGruber
3884ada760 Doc: Fix typo on json array (#4322) 2021-01-08 00:36:38 -05:00
Laurent Cozic
16788d1437 Tools: Setup server tests 2021-01-07 22:15:41 +00:00
Laurent Cozic
b1908756d4 Tools: Disable tsc compile when committing - too slow 2021-01-07 22:10:35 +00:00
Laurent Cozic
ccf5271584 Desktop: Handle case where a command is sent to an editor that is gone 2021-01-07 22:03:13 +00:00
Laurent Cozic
df3e6a6219 Desktop: Fixed context menu not being displayed on high DPI screens 2021-01-07 21:44:31 +00:00
Laurent Cozic
f43ec71d9a Tools: Increase Jest timeout on server tests 2021-01-07 21:34:07 +00:00
Laurent Cozic
32dab88054 Tools: Fixed validatePluginId test 2021-01-07 19:30:29 +00:00
Laurent Cozic
1b5868a7c5 Desktop release v1.6.4 2021-01-07 17:05:31 +00:00
Laurent Cozic
72712e71eb Desktop release v1.6.3 2021-01-07 17:05:21 +00:00
Laurent Cozic
ec29f791ba Merge branch 'dev' of github.com:laurent22/joplin into dev 2021-01-07 17:04:04 +00:00
Darshani Audhish
40c2e59394 Doc: Update order of the plugin list in documentation (#4321) 2021-01-07 17:03:34 +00:00
Caleb John
98cbb237b5 Desktop: Fixes: #4317: Spell checker inserts correction at wrong location (#4318) 2021-01-07 17:01:44 +00:00
Jan Blunck
826dda5a75 Mobile: Fixes #4268: Fix "Not implemented" error when downloading resources with S3 sync target (#4279)
Since the RNFetchBlob API doesn't support writing binary data directly
it creates a custom Writable which is doing the base64 encoding per 
chunk.

This also fixes a problem with the S3 synchronization code using the
shim.fsDriver().writeBinaryFile().

Tested with AVD Android 10.0 target.

Signed-off-by: Jan Blunck <jblunck@users.noreply.github.com>
2021-01-07 16:36:07 +00:00
Laurent Cozic
6dc5a816e5 Desktop: Add support for searching and installing plugins from repository 2021-01-07 16:30:53 +00:00
Laurent Cozic
1700b29f7d Merge branch 'dev' of github.com:laurent22/joplin into dev 2021-01-07 16:30:13 +00:00
Jerry Zhao
7a6966405c All: Support natural sorting by title (#4272) 2021-01-07 16:29:53 +00:00
Max S. Test
9cb576889f Doc: Update clipper.md (#4319)
Spelling fix
2021-01-06 19:18:21 -05:00
JackGruber
047846a552 Doc: Add Synology WebDAV Server to WebDAV-compatible services (#4315) 2021-01-06 19:17:13 -05:00
Gen Neko
99fb578db4 All: Translation: Update ja_JP.po (#4307) 2021-01-06 19:15:02 -05:00
Laurent Cozic
7114228fd6 Validate plugin ID 2021-01-06 20:27:04 +00:00
Laurent Cozic
8d4d438136 Tools: Updated script to build plugin repository 2021-01-06 20:23:23 +00:00
Laurent Cozic
420ac8359c Tools: Updated script to build plugin repository 2021-01-06 19:43:05 +00:00
Laurent Cozic
fe7691d786 Plugin Generator release v1.6.10 2021-01-05 21:59:41 +00:00
Laurent Cozic
db4f35b936 Generator: Added "npm run update" command 2021-01-05 21:59:16 +00:00
Laurent Cozic
72aabf71f3 Plugin Generator release v1.6.9 2021-01-05 21:49:37 +00:00
Laurent Cozic
d145ce1876 Generator: Fixed package name conversion and added test units 2021-01-05 21:49:08 +00:00
Laurent Cozic
ab6f02a949 Plugin Generator release v1.6.8 2021-01-05 18:28:36 +00:00
Laurent Cozic
1339414443 Generator: Merge ignore files when updating plugin 2021-01-05 18:28:12 +00:00
Laurent Cozic
732ca53b70 Plugin Generator release v1.6.7 2021-01-05 18:20:00 +00:00
Laurent Cozic
fa749d6d2a Generator: Merge ignore files when updating plugin 2021-01-05 18:18:40 +00:00
Laurent Cozic
6e69343bb6 Plugin Generator release v1.6.6 2021-01-05 18:02:35 +00:00
Laurent Cozic
520454affb Generator: Do not overwrite README.md when updating 2021-01-05 17:57:42 +00:00
Laurent Cozic
734514b6d8 Tools: Add script to build plugin repository 2021-01-05 15:25:15 +00:00
Laurent Cozic
ceb252b9ad Add "plugins" sub-package to group official Joplin plugins 2021-01-05 13:38:38 +00:00
Laurent Cozic
f121245e40 Plugin Generator release v1.6.5 2021-01-05 13:27:41 +00:00
Laurent Cozic
215a1e0240 Generator: Cleaned up prompts 2021-01-05 12:09:43 +00:00
Laurent Cozic
8ed36d7a29 Plugin Generator release v1.6.4 2021-01-05 11:31:26 +00:00
Laurent Cozic
2b33df2955 Tools: Fixed git-changelog for server 2021-01-04 22:33:36 +00:00
Laurent Cozic
5c283e4508 Desktop release v1.6.2 2021-01-04 19:39:01 +00:00
Laurent Cozic
c94ee5d99a Plugin Generator release v1.6.3 2021-01-04 19:38:41 +00:00
Laurent Cozic
4a258a2427 Generator: Better handling of package.json keywords 2021-01-04 19:32:30 +00:00
Laurent Cozic
330ef6f7e6 Tools: Fixed plugin package.json 2021-01-04 19:18:29 +00:00
Laurent Cozic
4a579393f3 Plugins: Updated types 2021-01-04 18:46:43 +00:00
Laurent Cozic
1091795a3a Generator: Update plugin generator to handle requirements of coming plugin repository 2021-01-04 18:45:43 +00:00
Laurent Cozic
b5fc206202 Plugins: Added joplin.workspace.selectedFolder() 2021-01-04 16:49:59 +00:00
Laurent Cozic
794fb6a122 Plugins: Fixes #4285: Allow API paths that contain 4 elements 2021-01-04 16:17:06 +00:00
Laurent Cozic
ec7cccf573 Doc: Fixed server doc 2021-01-04 16:16:09 +00:00
Laurent Cozic
e94a1cac1c Server release v1.6.4 2021-01-04 15:03:36 +00:00
Laurent Cozic
76ff0b9c11 Server: Added script to create release 2021-01-04 15:03:17 +00:00
Laurent Cozic
fb01c64133 Server: Added script to create release 2021-01-04 15:01:45 +00:00
Laurent Cozic
1dbeff1908 Tests: Fixed potential timing issue in tests
Might fix this: https://travis-ci.org/github/laurent22/joplin/jobs/752585346#L1352
2021-01-03 16:27:51 +00:00
Laurent Cozic
4f2d316db4 Doc: Fixed code block issue and cleaned up Download table 2021-01-03 15:55:47 +00:00
Laurent Cozic
4851fd1ab3 Doc: Added limitation for Rich Text editor 2021-01-03 15:35:26 +00:00
Laurent Cozic
ac8ddb1166 Plugin Generator release v1.6.2 2021-01-03 13:27:39 +00:00
Laurent Cozic
b61150457c Generator: Update homepage URL 2021-01-03 13:26:58 +00:00
Laurent Cozic
3e948146cd Generator: Resolves #4229: Add support for compiling content script 2021-01-03 13:21:48 +00:00
Roman Musin
8492a7ee26 Android: Fix images/resources long press - do not show menu on pinch zoom (#4275) 2021-01-03 11:23:17 +00:00
Laurent Cozic
0e57baf5b9 Desktop: Made editor padding more consistent and ensure it is present even when sidebars are gone 2021-01-02 17:27:37 +00:00
Laurent Cozic
05f65c326a Merge branch 'dev' of github.com:laurent22/joplin into dev 2021-01-02 16:55:20 +00:00
Laurent Cozic
491714cde6 Desktop, Mobile: Fixed issue where file:// URLs would not be rendered correctly 2021-01-02 16:53:59 +00:00
Laurent Cozic
34c1096307 Plugins: Allow loading external JS or CSS from dialog 2021-01-02 16:21:32 +00:00
Roman Musin
ebe3ddcd21 Android: Resolves #4020: Enable Android Backup support again (#4277) 2021-01-02 15:31:54 +00:00
Daeraxa
ca5ac9696b Desktop: Sort attachments in a case insensitive way in Attachments screen (#4273)
Update to add case insensitive sorting - https://discourse.joplinapp.org/t/a-feature-request/13486/5?u=daeraxa
2021-01-02 15:27:53 +00:00
Caleb John
fdfbb84d37 Desktop: Resolves #4257: Add extra macOS keys (#4259) 2021-01-02 15:12:29 +00:00
Jonathan Heard
740aba90ea All: Resolves #3528: Upload Big Notes to Onedrive (#4120) 2021-01-02 15:09:33 +00:00
Laurent Cozic
eab9ff175c Tools: Added script to simplify iOS release 2021-01-02 14:56:47 +00:00
Laurent Cozic
5b295d5f6f Plugins: Add support for hiding and showing panels 2021-01-02 13:32:15 +00:00
Helmut K. C. Tessarek
0be8cdf760 Update translations 2021-01-01 21:00:35 -05:00
Po-chiang Chao
545940f545 All: Translation: Update zh_TW.po (#4278)
Include new strings and fuzzy translated strings
2021-01-01 19:18:52 -05:00
Laurent Cozic
d58f39823a Doc: Added link to new specs, and added more details to delta sync spec 2021-01-01 13:25:05 +00:00
Laurent Cozic
f9fb1b8a81 Merge branch 'dev' of github.com:laurent22/joplin into dev 2021-01-01 13:04:30 +00:00
Laurent Cozic
56ded0062a All: Add more log info when a revision cannot be deleted due to still-encrypted itel 2021-01-01 13:04:15 +00:00
Laurent Cozic
83b29d7c51 macOS: Fixed paste as text in Rich Text editor 2021-01-01 12:38:17 +00:00
Arda Kılıçdağı
1ec0746263 All: Translation: Update tr_TR.po (#4274)
Hello,

You can find the updated Turkish translations in this pull request.

Also, happy new year! 🎉
2020-12-31 12:08:09 -05:00
Laurent Cozic
568d11bddf Merge branch 'dev' of github.com:laurent22/joplin into dev 2020-12-31 16:04:06 +00:00
Laurent Cozic
97b25ac99d Doc: Add spec for Joplin Server delta sync 2020-12-31 15:58:38 +00:00
Laurent Cozic
7f1d3d8a5d Doc: Added spec for server URL formats 2020-12-31 12:38:22 +00:00
Elaborendum
fde201fbe9 All: Translation: Update es_ES.po (#4260)
* Updated es_ES.po

* Reverting some changes

* Redid translation using current .po file
2020-12-31 00:59:25 -05:00
Laurent Cozic
694a1b4ede Merge branch 'dev' of github.com:laurent22/joplin into dev 2020-12-30 23:53:20 +00:00
Laurent Cozic
20d126b39d Server: Fixed access control on user list and clean up 2020-12-30 23:50:44 +00:00
Helmut K. C. Tessarek
8ca9c3092a Clipper release v1.6.1 2020-12-30 14:50:47 -05:00
Laurent Cozic
d2771029a3 Server: Support for notifications and clean up 2020-12-30 18:35:18 +00:00
Laurent Cozic
4128c53fcf Update French translation 2020-12-30 13:07:41 +00:00
Laurent Cozic
a14410b28c Android release v1.6.4 2020-12-30 12:04:25 +00:00
Laurent Cozic
d1f8520e6e Mobile: Fixed package import issue 2020-12-30 11:51:43 +00:00
Laurent Cozic
d76746b8e4 Android release v1.6.3 2020-12-30 11:05:04 +00:00
Laurent Cozic
89d173b460 Mobile: Add support for Joplin Server 2020-12-30 10:54:00 +00:00
Laurent Cozic
81aba8b8b0 Server: Fixed pagination 2020-12-30 02:24:29 +00:00
Laurent Cozic
9e076bf194 Desktop release v1.5.14 2020-12-30 00:18:46 +00:00
Laurent Cozic
74a797b410 Desktop, Cli: Fixed importing ENEX files that contain hidden sections 2020-12-30 00:17:15 +00:00
Laurent Cozic
f48697572d Server: Fixed file count issue for PostgreSQL 2020-12-29 23:48:34 +00:00
Laurent Cozic
e61e8b7b94 Server: Fixed URLs 2020-12-29 23:22:57 +00:00
Laurent Cozic
1deab7e8d1 Android release v1.6.2 2020-12-29 19:42:30 +00:00
Laurent Cozic
86b28b5ecf Desktop release v1.6.1 2020-12-29 18:30:38 +00:00
Laurent Cozic
938e723434 Merge branch 'dev' of github.com:laurent22/joplin into dev 2020-12-29 18:07:02 +00:00
Laurent Cozic
ee2ec28cd4 Server: Add basic file manager 2020-12-29 18:04:57 +00:00
Helmut K. C. Tessarek
9dc505e85b fix typo in source and all translations 2020-12-29 12:10:52 -05:00
Helmut K. C. Tessarek
3df31584af update en_US.po 2020-12-29 11:50:31 -05:00
Zhang YANG
a7e3b381cb All: Translation: Update zh_CN.po (#4263) 2020-12-29 11:23:33 -05:00
Laurent Cozic
70381a233b Merge branch 'release-1.5' into dev 2020-12-29 16:17:18 +00:00
Laurent Cozic
2966fe0df2 Desktop release v1.5.13 2020-12-29 16:14:27 +00:00
Laurent Cozic
143f0b4bc5 Desktop, Cli: Improve support for SVG images when importing ENEX files 2020-12-29 15:58:20 +00:00
Helmut K. C. Tessarek
24ec3b8897 Update translations (for new server code) 2020-12-28 15:17:17 -05:00
Beowulf2
01aa4f9d5e All: Translation: Update de_DE.po (#4258) 2020-12-28 14:39:58 -05:00
Manuel Tassi
520efdcb39 All: Translation: Update it_IT.po (#4256)
* Update it_IT.po

* Update it_IT.po

* Update it_IT.po
2020-12-28 14:39:38 -05:00
Laurent Cozic
34a99f738c linter 2020-12-28 17:26:15 +00:00
Laurent Cozic
0e0de1207f Server: Adding basic file manager 2020-12-28 16:37:12 +00:00
Laurent Cozic
2fda067034 Server: Improved logging and error handling 2020-12-28 15:15:30 +00:00
Laurent Cozic
29177330b0 Merge branch 'release-1.5' into dev 2020-12-28 14:31:37 +00:00
Laurent Cozic
66a5490b54 Desktop release v1.5.12 2020-12-28 14:29:37 +00:00
Laurent Cozic
469cd19ec1 Desktop: Fix issue when importing ENEX file that contains invalid list elements 2020-12-28 14:29:02 +00:00
Laurent
41684a64ef Server: Add Joplin Server package (#1872) 2020-12-28 11:48:47 +00:00
Laurent Cozic
2cd7839552 Increase version num to 1.6 2020-12-27 22:46:27 +00:00
Laurent Cozic
c3d4617612 Update website 2020-12-27 22:41:47 +00:00
Laurent Cozic
158fafc4a0 Merge branch 'release-1.5' into dev 2020-12-27 22:40:26 +00:00
Laurent Cozic
0f59731c06 Plugin Generator release v1.5.3 2020-12-27 22:28:16 +00:00
Laurent Cozic
d0f1a67d96 Plugins: Updated types 2020-12-27 22:26:17 +00:00
Laurent Cozic
2a1434f987 Generator: Fixed publish logic 2020-12-27 22:25:17 +00:00
Laurent Cozic
1ee177880d Plugin Generator release v1.5.2 2020-12-27 22:23:18 +00:00
Laurent Cozic
f6d899eb29 Generator: Fixed publish script 2020-12-27 22:22:29 +00:00
Laurent Cozic
a97f25fd61 Update website 2020-12-27 19:55:34 +00:00
Laurent Cozic
325a5ab08f ios-v10.5.1 2020-12-27 19:47:44 +00:00
Laurent Cozic
c158878b66 Desktop release v1.5.11 2020-12-27 19:19:13 +00:00
Laurent Cozic
0f0f9c1161 macOS: Update app icon 2020-12-26 13:49:00 +00:00
Laurent Cozic
79612163b2 Android release v1.5.1 2020-12-26 00:57:31 +00:00
Laurent Cozic
fab5ed165c CLI v1.5.1 2020-12-26 00:48:02 +00:00
Laurent Cozic
4897c763bd Releasing sub-packages 2020-12-26 00:45:11 +00:00
Laurent Cozic
17b9867bf2 Desktop release v1.5.10 2020-12-26 00:17:15 +00:00
Laurent Cozic
b8f14d50f5 Desktop, Cli: Add table captions when importing ENEX files 2020-12-25 17:44:51 +00:00
Laurent Cozic
9e2f60523f Desktop, Cli: Fixed issues when importing hidden tables within hidden sections in Enex files 2020-12-25 16:37:05 +00:00
Laurent Cozic
321ff4fced Merge branch 'dev' of https://github.com/laurent22/joplin into dev 2020-12-24 12:25:19 +00:00
Laurent Cozic
2a31f914bb Desktop: Update macOS icon for macOS Big Sur 2020-12-24 12:24:40 +00:00
Manuel Tassi
0b71c33d09 All: Translation: Update it_IT.po (#4247) 2020-12-23 21:39:26 -05:00
Laurent Cozic
502c812d9c Chore: remove debug code 2020-12-23 23:46:36 +00:00
Laurent Cozic
5dc3baa50c Desktop: Removed warning for Markdown editor spell checking 2020-12-23 23:19:35 +00:00
Laurent Cozic
a9af58146b Desktop: Fixes #4201: Fixed context menu when the UI is zoomed in or out 2020-12-23 23:17:12 +00:00
Laurent Cozic
17edebb6b1 Desktop: Fixes #4243: Prevent double paste when using Shift+Ctrl+V 2020-12-23 20:03:38 +00:00
Laurent Cozic
bb2855bd80 Desktop, Mobile: Display Katex parsing errors 2020-12-23 19:46:21 +00:00
Laurent Cozic
6cae8a7d20 Desktop release v1.5.9 2020-12-23 17:26:45 +00:00
Caleb John
849cd9a2a2 Linux: Remove the appimage version from installer script (#4245) 2020-12-23 17:26:22 +00:00
Laurent Cozic
5826a8d373 Desktop, Cli: Improved error handling when importing ENEX files 2020-12-23 17:25:26 +00:00
Caleb John
18c5404cbc Dedktop: Fix typo when passing generic editor commands to the editor (#4240) 2020-12-21 10:32:42 +00:00
Laurent Cozic
f16fd6462b Desktop release v1.5.8 2020-12-20 07:59:01 +00:00
Laurent Cozic
67c2998b9d Merge branch 'dev' of github.com:laurent22/joplin into dev 2020-12-20 07:58:25 +00:00
Laurent Cozic
db4f6e9ce5 Chore: Fixed mobile build 2020-12-20 07:52:28 +00:00
Caleb John
0a2364f917 Desktop: Fix End key behavior with Codemirror spellcheck (#4215)
* Manually fudge the codemirror cursor handling when in contenteditable mode
2020-12-19 18:04:02 -07:00
Laurent Cozic
1aebcbb27c Merge branch 'dev' of github.com:laurent22/joplin into dev 2020-12-19 22:17:48 +00:00
Jonathan Plasse
5bf1dc906d Doc: Add FAQ entry about passing arguments to the installation script (#4209) 2020-12-19 17:59:40 +00:00
Caleb John
2529da5b09 Desktop: Fixes #4130: Register Markdown editor commands with the Keyboard Shortcut editor (#4136) 2020-12-19 17:57:41 +00:00
Laurent Cozic
d1a7d31335 Desktop: Use plugins whenever printing or exporting notes
Ref: https://discourse.joplinapp.org/t/external-css-per-note-is-being-ignored/13016/6
2020-12-19 17:42:18 +00:00
Laurent Cozic
b8493baa5e Desktop, Cli: Fixed import of ENEX files that contain invisible sections
Ref: https://discourse.joplinapp.org/t/code-block-imports-from-evernote/13113/4
2020-12-19 16:18:07 +00:00
Laurent Cozic
f53a7d3a8a Desktop, Cli: Fixed importing certain code blocks from ENEX
Ref: https://discourse.joplinapp.org/t/13113
2020-12-19 15:37:42 +00:00
Laurent Cozic
33c5037816 Desktop, Cli: Fixed importing ENEX files that contain resources with invalid mime type 2020-12-18 23:56:38 +00:00
Laurent Cozic
38b0702314 Android: Disable long press on images as it interferes with zoom in and out 2020-12-18 13:37:36 +00:00
Laurent Cozic
693f59d07a Tools: Fixed OneDrive test units 2020-12-16 11:19:35 +00:00
Laurent Cozic
59e2e65de0 Tools: Fixed auth for OneDrive test units 2020-12-16 01:00:53 +00:00
Laurent Cozic
4180d4bd28 Tools: Allow publishing all lib packages to @joplin 2020-12-14 14:55:31 +00:00
671 changed files with 53126 additions and 14608 deletions

9
.dockerignore Normal file
View File

@@ -0,0 +1,9 @@
**/node_modules
Assets/
.git/
_releases/
packages/app-desktop
packages/app-cli
packages/app-mobile
packages/app-clipper
packages/generator-joplin

9
.env-sample Normal file
View File

@@ -0,0 +1,9 @@
# Example of local config, for development:
#
# JOPLIN_BASE_URL=http://localhost:22300
# JOPLIN_PORT=22300
# Example of config for production:
#
# JOPLIN_BASE_URL=https://example.com/joplin
# JOPLIN_PORT=22300

View File

@@ -6,6 +6,7 @@ _releases/
**/node_modules/
Assets/
docs/
packages/server/dist/
highlight.pack.js
Modules/TinyMCE/IconPack/postinstall.js
Modules/TinyMCE/JoplinLists/
@@ -109,6 +110,9 @@ packages/app-cli/tests/models_Note.js.map
packages/app-cli/tests/models_Setting.d.ts
packages/app-cli/tests/models_Setting.js
packages/app-cli/tests/models_Setting.js.map
packages/app-cli/tests/services/plugins/api/JoplinSettings.d.ts
packages/app-cli/tests/services/plugins/api/JoplinSettings.js
packages/app-cli/tests/services/plugins/api/JoplinSettings.js.map
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.d.ts
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.js
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.js.map
@@ -154,6 +158,9 @@ packages/app-cli/tests/support/plugins/content_script/api/types.js.map
packages/app-cli/tests/support/plugins/content_script/src/index.d.ts
packages/app-cli/tests/support/plugins/content_script/src/index.js
packages/app-cli/tests/support/plugins/content_script/src/index.js.map
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.d.ts
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.js
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.js.map
packages/app-cli/tests/support/plugins/dialog/api/index.d.ts
packages/app-cli/tests/support/plugins/dialog/api/index.js
packages/app-cli/tests/support/plugins/dialog/api/index.js.map
@@ -322,9 +329,18 @@ packages/app-desktop/gui/ConfigScreen/ConfigScreen.js.map
packages/app-desktop/gui/ConfigScreen/SideBar.d.ts
packages/app-desktop/gui/ConfigScreen/SideBar.js
packages/app-desktop/gui/ConfigScreen/SideBar.js.map
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.d.ts
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.js
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.js.map
packages/app-desktop/gui/DropboxLoginScreen.d.ts
packages/app-desktop/gui/DropboxLoginScreen.js
packages/app-desktop/gui/DropboxLoginScreen.js.map
@@ -652,9 +668,6 @@ packages/app-desktop/gui/Root_UpgradeSyncTarget.js.map
packages/app-desktop/gui/SearchBar/SearchBar.d.ts
packages/app-desktop/gui/SearchBar/SearchBar.js
packages/app-desktop/gui/SearchBar/SearchBar.js.map
packages/app-desktop/gui/SearchBar/styles/index.d.ts
packages/app-desktop/gui/SearchBar/styles/index.js
packages/app-desktop/gui/SearchBar/styles/index.js.map
packages/app-desktop/gui/ShareNoteDialog.d.ts
packages/app-desktop/gui/ShareNoteDialog.js
packages/app-desktop/gui/ShareNoteDialog.js.map
@@ -703,6 +716,9 @@ packages/app-desktop/gui/hooks/usePrevious.js.map
packages/app-desktop/gui/hooks/usePropsDebugger.d.ts
packages/app-desktop/gui/hooks/usePropsDebugger.js
packages/app-desktop/gui/hooks/usePropsDebugger.js.map
packages/app-desktop/gui/lib/SearchInput/SearchInput.d.ts
packages/app-desktop/gui/lib/SearchInput/SearchInput.js
packages/app-desktop/gui/lib/SearchInput/SearchInput.js.map
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.d.ts
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.js
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.js.map
@@ -718,6 +734,9 @@ packages/app-desktop/gui/style/StyledTextInput.js.map
packages/app-desktop/gui/utils/NoteListUtils.d.ts
packages/app-desktop/gui/utils/NoteListUtils.js
packages/app-desktop/gui/utils/NoteListUtils.js.map
packages/app-desktop/gui/utils/convertToScreenCoordinates.d.ts
packages/app-desktop/gui/utils/convertToScreenCoordinates.js
packages/app-desktop/gui/utils/convertToScreenCoordinates.js.map
packages/app-desktop/plugins/GotoAnything.d.ts
packages/app-desktop/plugins/GotoAnything.js
packages/app-desktop/plugins/GotoAnything.js.map
@@ -799,6 +818,9 @@ packages/app-mobile/components/screens/Note.js.map
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.d.ts
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.js
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.js.map
packages/app-mobile/root.d.ts
packages/app-mobile/root.js
packages/app-mobile/root.js.map
packages/app-mobile/services/AlarmServiceDriver.android.d.ts
packages/app-mobile/services/AlarmServiceDriver.android.js
packages/app-mobile/services/AlarmServiceDriver.android.js.map
@@ -886,12 +908,21 @@ packages/lib/InMemoryCache.js.map
packages/lib/JoplinServerApi.d.ts
packages/lib/JoplinServerApi.js
packages/lib/JoplinServerApi.js.map
packages/lib/JoplinServerApi2.d.ts
packages/lib/JoplinServerApi2.js
packages/lib/JoplinServerApi2.js.map
packages/lib/Logger.d.ts
packages/lib/Logger.js
packages/lib/Logger.js.map
packages/lib/PoorManIntervals.d.ts
packages/lib/PoorManIntervals.js
packages/lib/PoorManIntervals.js.map
packages/lib/SyncTargetJoplinServer.d.ts
packages/lib/SyncTargetJoplinServer.js
packages/lib/SyncTargetJoplinServer.js.map
packages/lib/SyncTargetOneDrive.d.ts
packages/lib/SyncTargetOneDrive.js
packages/lib/SyncTargetOneDrive.js.map
packages/lib/Synchronizer.d.ts
packages/lib/Synchronizer.js
packages/lib/Synchronizer.js.map
@@ -913,12 +944,18 @@ packages/lib/errorUtils.js.map
packages/lib/eventManager.d.ts
packages/lib/eventManager.js
packages/lib/eventManager.js.map
packages/lib/file-api-driver-joplinServer.d.ts
packages/lib/file-api-driver-joplinServer.js
packages/lib/file-api-driver-joplinServer.js.map
packages/lib/fs-driver-base.d.ts
packages/lib/fs-driver-base.js
packages/lib/fs-driver-base.js.map
packages/lib/fs-driver-node.d.ts
packages/lib/fs-driver-node.js
packages/lib/fs-driver-node.js.map
packages/lib/import-enex-md-gen.d.ts
packages/lib/import-enex-md-gen.js
packages/lib/import-enex-md-gen.js.map
packages/lib/locale.d.ts
packages/lib/locale.js
packages/lib/locale.js.map
@@ -949,6 +986,9 @@ packages/lib/models/utils/types.js.map
packages/lib/ntpDate.d.ts
packages/lib/ntpDate.js
packages/lib/ntpDate.js.map
packages/lib/onedrive-api.d.ts
packages/lib/onedrive-api.js
packages/lib/onedrive-api.js.map
packages/lib/path-utils.d.ts
packages/lib/path-utils.js
packages/lib/path-utils.js.map
@@ -1099,6 +1139,9 @@ packages/lib/services/plugins/Plugin.js.map
packages/lib/services/plugins/PluginService.d.ts
packages/lib/services/plugins/PluginService.js
packages/lib/services/plugins/PluginService.js.map
packages/lib/services/plugins/RepositoryApi.d.ts
packages/lib/services/plugins/RepositoryApi.js
packages/lib/services/plugins/RepositoryApi.js.map
packages/lib/services/plugins/ToolbarButtonController.d.ts
packages/lib/services/plugins/ToolbarButtonController.js
packages/lib/services/plugins/ToolbarButtonController.js.map
@@ -1183,6 +1226,12 @@ packages/lib/services/plugins/utils/mapEventHandlersToIds.js.map
packages/lib/services/plugins/utils/types.d.ts
packages/lib/services/plugins/utils/types.js
packages/lib/services/plugins/utils/types.js.map
packages/lib/services/plugins/utils/validatePluginId.d.ts
packages/lib/services/plugins/utils/validatePluginId.js
packages/lib/services/plugins/utils/validatePluginId.js.map
packages/lib/services/plugins/utils/validatePluginId.test.d.ts
packages/lib/services/plugins/utils/validatePluginId.test.js
packages/lib/services/plugins/utils/validatePluginId.test.js.map
packages/lib/services/rest/Api.d.ts
packages/lib/services/rest/Api.js
packages/lib/services/rest/Api.js.map
@@ -1312,6 +1361,15 @@ packages/lib/uuid.js.map
packages/lib/versionInfo.d.ts
packages/lib/versionInfo.js
packages/lib/versionInfo.js.map
packages/plugins/ToggleSideBars/api/index.d.ts
packages/plugins/ToggleSideBars/api/index.js
packages/plugins/ToggleSideBars/api/index.js.map
packages/plugins/ToggleSideBars/api/types.d.ts
packages/plugins/ToggleSideBars/api/types.js
packages/plugins/ToggleSideBars/api/types.js.map
packages/plugins/ToggleSideBars/src/index.d.ts
packages/plugins/ToggleSideBars/src/index.js
packages/plugins/ToggleSideBars/src/index.js.map
packages/renderer/HtmlToHtml.d.ts
packages/renderer/HtmlToHtml.js
packages/renderer/HtmlToHtml.js.map
@@ -1369,6 +1427,12 @@ packages/renderer/MdToHtml/rules/mermaid.js.map
packages/renderer/MdToHtml/rules/sanitize_html.d.ts
packages/renderer/MdToHtml/rules/sanitize_html.js
packages/renderer/MdToHtml/rules/sanitize_html.js.map
packages/renderer/MdToHtml/setupLinkify.d.ts
packages/renderer/MdToHtml/setupLinkify.js
packages/renderer/MdToHtml/setupLinkify.js.map
packages/renderer/MdToHtml/validateLinks.d.ts
packages/renderer/MdToHtml/validateLinks.js
packages/renderer/MdToHtml/validateLinks.js.map
packages/renderer/htmlUtils.d.ts
packages/renderer/htmlUtils.js
packages/renderer/htmlUtils.js.map
@@ -1384,4 +1448,244 @@ packages/renderer/pathUtils.js.map
packages/renderer/utils.d.ts
packages/renderer/utils.js
packages/renderer/utils.js.map
packages/server/src/app.d.ts
packages/server/src/app.js
packages/server/src/app.js.map
packages/server/src/config-base.d.ts
packages/server/src/config-base.js
packages/server/src/config-base.js.map
packages/server/src/config-buildTypes.d.ts
packages/server/src/config-buildTypes.js
packages/server/src/config-buildTypes.js.map
packages/server/src/config-dev.d.ts
packages/server/src/config-dev.js
packages/server/src/config-dev.js.map
packages/server/src/config-prod.d.ts
packages/server/src/config-prod.js
packages/server/src/config-prod.js.map
packages/server/src/config-tests.d.ts
packages/server/src/config-tests.js
packages/server/src/config-tests.js.map
packages/server/src/config.d.ts
packages/server/src/config.js
packages/server/src/config.js.map
packages/server/src/controllers/BaseController.d.ts
packages/server/src/controllers/BaseController.js
packages/server/src/controllers/BaseController.js.map
packages/server/src/controllers/api/FileController.d.ts
packages/server/src/controllers/api/FileController.js
packages/server/src/controllers/api/FileController.js.map
packages/server/src/controllers/api/FileController.test.d.ts
packages/server/src/controllers/api/FileController.test.js
packages/server/src/controllers/api/FileController.test.js.map
packages/server/src/controllers/api/OAuthController.d.ts
packages/server/src/controllers/api/OAuthController.js
packages/server/src/controllers/api/OAuthController.js.map
packages/server/src/controllers/api/SessionController.d.ts
packages/server/src/controllers/api/SessionController.js
packages/server/src/controllers/api/SessionController.js.map
packages/server/src/controllers/api/SessionController.test.d.ts
packages/server/src/controllers/api/SessionController.test.js
packages/server/src/controllers/api/SessionController.test.js.map
packages/server/src/controllers/api/UserController.d.ts
packages/server/src/controllers/api/UserController.js
packages/server/src/controllers/api/UserController.js.map
packages/server/src/controllers/api/UserController.test.d.ts
packages/server/src/controllers/api/UserController.test.js
packages/server/src/controllers/api/UserController.test.js.map
packages/server/src/controllers/factory.d.ts
packages/server/src/controllers/factory.js
packages/server/src/controllers/factory.js.map
packages/server/src/controllers/index/FileController.d.ts
packages/server/src/controllers/index/FileController.js
packages/server/src/controllers/index/FileController.js.map
packages/server/src/controllers/index/HomeController.d.ts
packages/server/src/controllers/index/HomeController.js
packages/server/src/controllers/index/HomeController.js.map
packages/server/src/controllers/index/LoginController.d.ts
packages/server/src/controllers/index/LoginController.js
packages/server/src/controllers/index/LoginController.js.map
packages/server/src/controllers/index/NotificationController.d.ts
packages/server/src/controllers/index/NotificationController.js
packages/server/src/controllers/index/NotificationController.js.map
packages/server/src/controllers/index/ProfileController.d.ts
packages/server/src/controllers/index/ProfileController.js
packages/server/src/controllers/index/ProfileController.js.map
packages/server/src/controllers/index/UserController.d.ts
packages/server/src/controllers/index/UserController.js
packages/server/src/controllers/index/UserController.js.map
packages/server/src/db.d.ts
packages/server/src/db.js
packages/server/src/db.js.map
packages/server/src/middleware/notificationHandler.d.ts
packages/server/src/middleware/notificationHandler.js
packages/server/src/middleware/notificationHandler.js.map
packages/server/src/middleware/ownerHandler.d.ts
packages/server/src/middleware/ownerHandler.js
packages/server/src/middleware/ownerHandler.js.map
packages/server/src/middleware/routeHandler.d.ts
packages/server/src/middleware/routeHandler.js
packages/server/src/middleware/routeHandler.js.map
packages/server/src/migrations/20190913171451_create.d.ts
packages/server/src/migrations/20190913171451_create.js
packages/server/src/migrations/20190913171451_create.js.map
packages/server/src/migrations/20203012152842_notifications.d.ts
packages/server/src/migrations/20203012152842_notifications.js
packages/server/src/migrations/20203012152842_notifications.js.map
packages/server/src/models/ApiClientModel.d.ts
packages/server/src/models/ApiClientModel.js
packages/server/src/models/ApiClientModel.js.map
packages/server/src/models/BaseModel.d.ts
packages/server/src/models/BaseModel.js
packages/server/src/models/BaseModel.js.map
packages/server/src/models/ChangeModel.d.ts
packages/server/src/models/ChangeModel.js
packages/server/src/models/ChangeModel.js.map
packages/server/src/models/ChangeModel.test.d.ts
packages/server/src/models/ChangeModel.test.js
packages/server/src/models/ChangeModel.test.js.map
packages/server/src/models/FileModel.d.ts
packages/server/src/models/FileModel.js
packages/server/src/models/FileModel.js.map
packages/server/src/models/FileModel.test.d.ts
packages/server/src/models/FileModel.test.js
packages/server/src/models/FileModel.test.js.map
packages/server/src/models/NotificationModel.d.ts
packages/server/src/models/NotificationModel.js
packages/server/src/models/NotificationModel.js.map
packages/server/src/models/NotificationModel.test.d.ts
packages/server/src/models/NotificationModel.test.js
packages/server/src/models/NotificationModel.test.js.map
packages/server/src/models/PermissionModel.d.ts
packages/server/src/models/PermissionModel.js
packages/server/src/models/PermissionModel.js.map
packages/server/src/models/SessionModel.d.ts
packages/server/src/models/SessionModel.js
packages/server/src/models/SessionModel.js.map
packages/server/src/models/UserModel.d.ts
packages/server/src/models/UserModel.js
packages/server/src/models/UserModel.js.map
packages/server/src/models/factory.d.ts
packages/server/src/models/factory.js
packages/server/src/models/factory.js.map
packages/server/src/models/utils/pagination.d.ts
packages/server/src/models/utils/pagination.js
packages/server/src/models/utils/pagination.js.map
packages/server/src/models/utils/pagination.test.d.ts
packages/server/src/models/utils/pagination.test.js
packages/server/src/models/utils/pagination.test.js.map
packages/server/src/routes/api/files.d.ts
packages/server/src/routes/api/files.js
packages/server/src/routes/api/files.js.map
packages/server/src/routes/api/index.d.ts
packages/server/src/routes/api/index.js
packages/server/src/routes/api/index.js.map
packages/server/src/routes/api/ping.d.ts
packages/server/src/routes/api/ping.js
packages/server/src/routes/api/ping.js.map
packages/server/src/routes/api/sessions.d.ts
packages/server/src/routes/api/sessions.js
packages/server/src/routes/api/sessions.js.map
packages/server/src/routes/default.d.ts
packages/server/src/routes/default.js
packages/server/src/routes/default.js.map
packages/server/src/routes/index/files.d.ts
packages/server/src/routes/index/files.js
packages/server/src/routes/index/files.js.map
packages/server/src/routes/index/home.d.ts
packages/server/src/routes/index/home.js
packages/server/src/routes/index/home.js.map
packages/server/src/routes/index/login.d.ts
packages/server/src/routes/index/login.js
packages/server/src/routes/index/login.js.map
packages/server/src/routes/index/logout.d.ts
packages/server/src/routes/index/logout.js
packages/server/src/routes/index/logout.js.map
packages/server/src/routes/index/notifications.d.ts
packages/server/src/routes/index/notifications.js
packages/server/src/routes/index/notifications.js.map
packages/server/src/routes/index/profile.d.ts
packages/server/src/routes/index/profile.js
packages/server/src/routes/index/profile.js.map
packages/server/src/routes/index/user.d.ts
packages/server/src/routes/index/user.js
packages/server/src/routes/index/user.js.map
packages/server/src/routes/index/users.d.ts
packages/server/src/routes/index/users.js
packages/server/src/routes/index/users.js.map
packages/server/src/routes/oauth2/authorize.d.ts
packages/server/src/routes/oauth2/authorize.js
packages/server/src/routes/oauth2/authorize.js.map
packages/server/src/routes/routes.d.ts
packages/server/src/routes/routes.js
packages/server/src/routes/routes.js.map
packages/server/src/services/MustacheService.d.ts
packages/server/src/services/MustacheService.js
packages/server/src/services/MustacheService.js.map
packages/server/src/tools/db-migrate.d.ts
packages/server/src/tools/db-migrate.js
packages/server/src/tools/db-migrate.js.map
packages/server/src/tools/dbTools.d.ts
packages/server/src/tools/dbTools.js
packages/server/src/tools/dbTools.js.map
packages/server/src/tools/generate-types.d.ts
packages/server/src/tools/generate-types.js
packages/server/src/tools/generate-types.js.map
packages/server/src/utils/TransactionHandler.d.ts
packages/server/src/utils/TransactionHandler.js
packages/server/src/utils/TransactionHandler.js.map
packages/server/src/utils/auth.d.ts
packages/server/src/utils/auth.js
packages/server/src/utils/auth.js.map
packages/server/src/utils/base64.d.ts
packages/server/src/utils/base64.js
packages/server/src/utils/base64.js.map
packages/server/src/utils/cache.d.ts
packages/server/src/utils/cache.js
packages/server/src/utils/cache.js.map
packages/server/src/utils/defaultView.d.ts
packages/server/src/utils/defaultView.js
packages/server/src/utils/defaultView.js.map
packages/server/src/utils/errors.d.ts
packages/server/src/utils/errors.js
packages/server/src/utils/errors.js.map
packages/server/src/utils/htmlUtils.d.ts
packages/server/src/utils/htmlUtils.js
packages/server/src/utils/htmlUtils.js.map
packages/server/src/utils/koaIf.d.ts
packages/server/src/utils/koaIf.js
packages/server/src/utils/koaIf.js.map
packages/server/src/utils/requestUtils.d.ts
packages/server/src/utils/requestUtils.js
packages/server/src/utils/requestUtils.js.map
packages/server/src/utils/routeUtils.d.ts
packages/server/src/utils/routeUtils.js
packages/server/src/utils/routeUtils.js.map
packages/server/src/utils/routeUtils.test.d.ts
packages/server/src/utils/routeUtils.test.js
packages/server/src/utils/routeUtils.test.js.map
packages/server/src/utils/testUtils.d.ts
packages/server/src/utils/testUtils.js
packages/server/src/utils/testUtils.js.map
packages/server/src/utils/testing/testRouters.d.ts
packages/server/src/utils/testing/testRouters.js
packages/server/src/utils/testing/testRouters.js.map
packages/server/src/utils/time.d.ts
packages/server/src/utils/time.js
packages/server/src/utils/time.js.map
packages/server/src/utils/types.d.ts
packages/server/src/utils/types.js
packages/server/src/utils/types.js.map
packages/server/src/utils/urlUtils.d.ts
packages/server/src/utils/urlUtils.js
packages/server/src/utils/urlUtils.js.map
packages/server/src/utils/uuidgen.d.ts
packages/server/src/utils/uuidgen.js
packages/server/src/utils/uuidgen.js.map
packages/tools/build-plugin-repository.d.ts
packages/tools/build-plugin-repository.js
packages/tools/build-plugin-repository.js.map
packages/tools/release-server.d.ts
packages/tools/release-server.js
packages/tools/release-server.js.map
# AUTO-GENERATED - EXCLUDED TYPESCRIPT BUILD

View File

@@ -1,4 +1,5 @@
module.exports = {
'root': true,
'env': {
'browser': true,
'es6': true,
@@ -34,6 +35,9 @@ module.exports = {
'chrome': 'readonly',
'browser': 'readonly',
// Server admin UI global variables
'onDocumentReady': 'readonly',
'tinymce': 'readonly',
},
'parserOptions': {
@@ -61,7 +65,12 @@ module.exports = {
'no-var': ['error'],
'no-new-func': ['error'],
'import/prefer-default-export': ['error'],
'import/first': ['error'],
// This rule should not be enabled since it matters in what order
// imports are done, in particular in relation to the shim.setReact
// call, which should be done first, but this rule might move it down.
// 'import/first': ['error'],
'no-array-constructor': ['error'],
'radix': ['error'],

316
.gitignore vendored
View File

@@ -48,6 +48,7 @@ TODO.md
packages/tools/commit_hook.txt
packages/tools/github_oauth_token.txt
lerna-debug.log
.env
# AUTO-GENERATED - EXCLUDED TYPESCRIPT BUILD
packages/app-cli/app/LinkSelector.d.ts
@@ -98,6 +99,9 @@ packages/app-cli/tests/models_Note.js.map
packages/app-cli/tests/models_Setting.d.ts
packages/app-cli/tests/models_Setting.js
packages/app-cli/tests/models_Setting.js.map
packages/app-cli/tests/services/plugins/api/JoplinSettings.d.ts
packages/app-cli/tests/services/plugins/api/JoplinSettings.js
packages/app-cli/tests/services/plugins/api/JoplinSettings.js.map
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.d.ts
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.js
packages/app-cli/tests/services/plugins/api/JoplinViewMenuItem.js.map
@@ -143,6 +147,9 @@ packages/app-cli/tests/support/plugins/content_script/api/types.js.map
packages/app-cli/tests/support/plugins/content_script/src/index.d.ts
packages/app-cli/tests/support/plugins/content_script/src/index.js
packages/app-cli/tests/support/plugins/content_script/src/index.js.map
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.d.ts
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.js
packages/app-cli/tests/support/plugins/content_script/src/markdownItTestPlugin.js.map
packages/app-cli/tests/support/plugins/dialog/api/index.d.ts
packages/app-cli/tests/support/plugins/dialog/api/index.js
packages/app-cli/tests/support/plugins/dialog/api/index.js.map
@@ -311,9 +318,18 @@ packages/app-desktop/gui/ConfigScreen/ConfigScreen.js.map
packages/app-desktop/gui/ConfigScreen/SideBar.d.ts
packages/app-desktop/gui/ConfigScreen/SideBar.js
packages/app-desktop/gui/ConfigScreen/SideBar.js.map
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.d.ts
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.js
packages/app-desktop/gui/ConfigScreen/controls/PluginsStates.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginBox.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/PluginsStates.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/SearchPlugins.js.map
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.d.ts
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.js
packages/app-desktop/gui/ConfigScreen/controls/plugins/useOnInstallHandler.js.map
packages/app-desktop/gui/DropboxLoginScreen.d.ts
packages/app-desktop/gui/DropboxLoginScreen.js
packages/app-desktop/gui/DropboxLoginScreen.js.map
@@ -641,9 +657,6 @@ packages/app-desktop/gui/Root_UpgradeSyncTarget.js.map
packages/app-desktop/gui/SearchBar/SearchBar.d.ts
packages/app-desktop/gui/SearchBar/SearchBar.js
packages/app-desktop/gui/SearchBar/SearchBar.js.map
packages/app-desktop/gui/SearchBar/styles/index.d.ts
packages/app-desktop/gui/SearchBar/styles/index.js
packages/app-desktop/gui/SearchBar/styles/index.js.map
packages/app-desktop/gui/ShareNoteDialog.d.ts
packages/app-desktop/gui/ShareNoteDialog.js
packages/app-desktop/gui/ShareNoteDialog.js.map
@@ -692,6 +705,9 @@ packages/app-desktop/gui/hooks/usePrevious.js.map
packages/app-desktop/gui/hooks/usePropsDebugger.d.ts
packages/app-desktop/gui/hooks/usePropsDebugger.js
packages/app-desktop/gui/hooks/usePropsDebugger.js.map
packages/app-desktop/gui/lib/SearchInput/SearchInput.d.ts
packages/app-desktop/gui/lib/SearchInput/SearchInput.js
packages/app-desktop/gui/lib/SearchInput/SearchInput.js.map
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.d.ts
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.js
packages/app-desktop/gui/lib/ToggleButton/ToggleButton.js.map
@@ -707,6 +723,9 @@ packages/app-desktop/gui/style/StyledTextInput.js.map
packages/app-desktop/gui/utils/NoteListUtils.d.ts
packages/app-desktop/gui/utils/NoteListUtils.js
packages/app-desktop/gui/utils/NoteListUtils.js.map
packages/app-desktop/gui/utils/convertToScreenCoordinates.d.ts
packages/app-desktop/gui/utils/convertToScreenCoordinates.js
packages/app-desktop/gui/utils/convertToScreenCoordinates.js.map
packages/app-desktop/plugins/GotoAnything.d.ts
packages/app-desktop/plugins/GotoAnything.js
packages/app-desktop/plugins/GotoAnything.js.map
@@ -788,6 +807,9 @@ packages/app-mobile/components/screens/Note.js.map
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.d.ts
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.js
packages/app-mobile/components/screens/UpgradeSyncTargetScreen.js.map
packages/app-mobile/root.d.ts
packages/app-mobile/root.js
packages/app-mobile/root.js.map
packages/app-mobile/services/AlarmServiceDriver.android.d.ts
packages/app-mobile/services/AlarmServiceDriver.android.js
packages/app-mobile/services/AlarmServiceDriver.android.js.map
@@ -875,12 +897,21 @@ packages/lib/InMemoryCache.js.map
packages/lib/JoplinServerApi.d.ts
packages/lib/JoplinServerApi.js
packages/lib/JoplinServerApi.js.map
packages/lib/JoplinServerApi2.d.ts
packages/lib/JoplinServerApi2.js
packages/lib/JoplinServerApi2.js.map
packages/lib/Logger.d.ts
packages/lib/Logger.js
packages/lib/Logger.js.map
packages/lib/PoorManIntervals.d.ts
packages/lib/PoorManIntervals.js
packages/lib/PoorManIntervals.js.map
packages/lib/SyncTargetJoplinServer.d.ts
packages/lib/SyncTargetJoplinServer.js
packages/lib/SyncTargetJoplinServer.js.map
packages/lib/SyncTargetOneDrive.d.ts
packages/lib/SyncTargetOneDrive.js
packages/lib/SyncTargetOneDrive.js.map
packages/lib/Synchronizer.d.ts
packages/lib/Synchronizer.js
packages/lib/Synchronizer.js.map
@@ -902,12 +933,18 @@ packages/lib/errorUtils.js.map
packages/lib/eventManager.d.ts
packages/lib/eventManager.js
packages/lib/eventManager.js.map
packages/lib/file-api-driver-joplinServer.d.ts
packages/lib/file-api-driver-joplinServer.js
packages/lib/file-api-driver-joplinServer.js.map
packages/lib/fs-driver-base.d.ts
packages/lib/fs-driver-base.js
packages/lib/fs-driver-base.js.map
packages/lib/fs-driver-node.d.ts
packages/lib/fs-driver-node.js
packages/lib/fs-driver-node.js.map
packages/lib/import-enex-md-gen.d.ts
packages/lib/import-enex-md-gen.js
packages/lib/import-enex-md-gen.js.map
packages/lib/locale.d.ts
packages/lib/locale.js
packages/lib/locale.js.map
@@ -938,6 +975,9 @@ packages/lib/models/utils/types.js.map
packages/lib/ntpDate.d.ts
packages/lib/ntpDate.js
packages/lib/ntpDate.js.map
packages/lib/onedrive-api.d.ts
packages/lib/onedrive-api.js
packages/lib/onedrive-api.js.map
packages/lib/path-utils.d.ts
packages/lib/path-utils.js
packages/lib/path-utils.js.map
@@ -1088,6 +1128,9 @@ packages/lib/services/plugins/Plugin.js.map
packages/lib/services/plugins/PluginService.d.ts
packages/lib/services/plugins/PluginService.js
packages/lib/services/plugins/PluginService.js.map
packages/lib/services/plugins/RepositoryApi.d.ts
packages/lib/services/plugins/RepositoryApi.js
packages/lib/services/plugins/RepositoryApi.js.map
packages/lib/services/plugins/ToolbarButtonController.d.ts
packages/lib/services/plugins/ToolbarButtonController.js
packages/lib/services/plugins/ToolbarButtonController.js.map
@@ -1172,6 +1215,12 @@ packages/lib/services/plugins/utils/mapEventHandlersToIds.js.map
packages/lib/services/plugins/utils/types.d.ts
packages/lib/services/plugins/utils/types.js
packages/lib/services/plugins/utils/types.js.map
packages/lib/services/plugins/utils/validatePluginId.d.ts
packages/lib/services/plugins/utils/validatePluginId.js
packages/lib/services/plugins/utils/validatePluginId.js.map
packages/lib/services/plugins/utils/validatePluginId.test.d.ts
packages/lib/services/plugins/utils/validatePluginId.test.js
packages/lib/services/plugins/utils/validatePluginId.test.js.map
packages/lib/services/rest/Api.d.ts
packages/lib/services/rest/Api.js
packages/lib/services/rest/Api.js.map
@@ -1301,6 +1350,15 @@ packages/lib/uuid.js.map
packages/lib/versionInfo.d.ts
packages/lib/versionInfo.js
packages/lib/versionInfo.js.map
packages/plugins/ToggleSideBars/api/index.d.ts
packages/plugins/ToggleSideBars/api/index.js
packages/plugins/ToggleSideBars/api/index.js.map
packages/plugins/ToggleSideBars/api/types.d.ts
packages/plugins/ToggleSideBars/api/types.js
packages/plugins/ToggleSideBars/api/types.js.map
packages/plugins/ToggleSideBars/src/index.d.ts
packages/plugins/ToggleSideBars/src/index.js
packages/plugins/ToggleSideBars/src/index.js.map
packages/renderer/HtmlToHtml.d.ts
packages/renderer/HtmlToHtml.js
packages/renderer/HtmlToHtml.js.map
@@ -1358,6 +1416,12 @@ packages/renderer/MdToHtml/rules/mermaid.js.map
packages/renderer/MdToHtml/rules/sanitize_html.d.ts
packages/renderer/MdToHtml/rules/sanitize_html.js
packages/renderer/MdToHtml/rules/sanitize_html.js.map
packages/renderer/MdToHtml/setupLinkify.d.ts
packages/renderer/MdToHtml/setupLinkify.js
packages/renderer/MdToHtml/setupLinkify.js.map
packages/renderer/MdToHtml/validateLinks.d.ts
packages/renderer/MdToHtml/validateLinks.js
packages/renderer/MdToHtml/validateLinks.js.map
packages/renderer/htmlUtils.d.ts
packages/renderer/htmlUtils.js
packages/renderer/htmlUtils.js.map
@@ -1373,4 +1437,244 @@ packages/renderer/pathUtils.js.map
packages/renderer/utils.d.ts
packages/renderer/utils.js
packages/renderer/utils.js.map
packages/server/src/app.d.ts
packages/server/src/app.js
packages/server/src/app.js.map
packages/server/src/config-base.d.ts
packages/server/src/config-base.js
packages/server/src/config-base.js.map
packages/server/src/config-buildTypes.d.ts
packages/server/src/config-buildTypes.js
packages/server/src/config-buildTypes.js.map
packages/server/src/config-dev.d.ts
packages/server/src/config-dev.js
packages/server/src/config-dev.js.map
packages/server/src/config-prod.d.ts
packages/server/src/config-prod.js
packages/server/src/config-prod.js.map
packages/server/src/config-tests.d.ts
packages/server/src/config-tests.js
packages/server/src/config-tests.js.map
packages/server/src/config.d.ts
packages/server/src/config.js
packages/server/src/config.js.map
packages/server/src/controllers/BaseController.d.ts
packages/server/src/controllers/BaseController.js
packages/server/src/controllers/BaseController.js.map
packages/server/src/controllers/api/FileController.d.ts
packages/server/src/controllers/api/FileController.js
packages/server/src/controllers/api/FileController.js.map
packages/server/src/controllers/api/FileController.test.d.ts
packages/server/src/controllers/api/FileController.test.js
packages/server/src/controllers/api/FileController.test.js.map
packages/server/src/controllers/api/OAuthController.d.ts
packages/server/src/controllers/api/OAuthController.js
packages/server/src/controllers/api/OAuthController.js.map
packages/server/src/controllers/api/SessionController.d.ts
packages/server/src/controllers/api/SessionController.js
packages/server/src/controllers/api/SessionController.js.map
packages/server/src/controllers/api/SessionController.test.d.ts
packages/server/src/controllers/api/SessionController.test.js
packages/server/src/controllers/api/SessionController.test.js.map
packages/server/src/controllers/api/UserController.d.ts
packages/server/src/controllers/api/UserController.js
packages/server/src/controllers/api/UserController.js.map
packages/server/src/controllers/api/UserController.test.d.ts
packages/server/src/controllers/api/UserController.test.js
packages/server/src/controllers/api/UserController.test.js.map
packages/server/src/controllers/factory.d.ts
packages/server/src/controllers/factory.js
packages/server/src/controllers/factory.js.map
packages/server/src/controllers/index/FileController.d.ts
packages/server/src/controllers/index/FileController.js
packages/server/src/controllers/index/FileController.js.map
packages/server/src/controllers/index/HomeController.d.ts
packages/server/src/controllers/index/HomeController.js
packages/server/src/controllers/index/HomeController.js.map
packages/server/src/controllers/index/LoginController.d.ts
packages/server/src/controllers/index/LoginController.js
packages/server/src/controllers/index/LoginController.js.map
packages/server/src/controllers/index/NotificationController.d.ts
packages/server/src/controllers/index/NotificationController.js
packages/server/src/controllers/index/NotificationController.js.map
packages/server/src/controllers/index/ProfileController.d.ts
packages/server/src/controllers/index/ProfileController.js
packages/server/src/controllers/index/ProfileController.js.map
packages/server/src/controllers/index/UserController.d.ts
packages/server/src/controllers/index/UserController.js
packages/server/src/controllers/index/UserController.js.map
packages/server/src/db.d.ts
packages/server/src/db.js
packages/server/src/db.js.map
packages/server/src/middleware/notificationHandler.d.ts
packages/server/src/middleware/notificationHandler.js
packages/server/src/middleware/notificationHandler.js.map
packages/server/src/middleware/ownerHandler.d.ts
packages/server/src/middleware/ownerHandler.js
packages/server/src/middleware/ownerHandler.js.map
packages/server/src/middleware/routeHandler.d.ts
packages/server/src/middleware/routeHandler.js
packages/server/src/middleware/routeHandler.js.map
packages/server/src/migrations/20190913171451_create.d.ts
packages/server/src/migrations/20190913171451_create.js
packages/server/src/migrations/20190913171451_create.js.map
packages/server/src/migrations/20203012152842_notifications.d.ts
packages/server/src/migrations/20203012152842_notifications.js
packages/server/src/migrations/20203012152842_notifications.js.map
packages/server/src/models/ApiClientModel.d.ts
packages/server/src/models/ApiClientModel.js
packages/server/src/models/ApiClientModel.js.map
packages/server/src/models/BaseModel.d.ts
packages/server/src/models/BaseModel.js
packages/server/src/models/BaseModel.js.map
packages/server/src/models/ChangeModel.d.ts
packages/server/src/models/ChangeModel.js
packages/server/src/models/ChangeModel.js.map
packages/server/src/models/ChangeModel.test.d.ts
packages/server/src/models/ChangeModel.test.js
packages/server/src/models/ChangeModel.test.js.map
packages/server/src/models/FileModel.d.ts
packages/server/src/models/FileModel.js
packages/server/src/models/FileModel.js.map
packages/server/src/models/FileModel.test.d.ts
packages/server/src/models/FileModel.test.js
packages/server/src/models/FileModel.test.js.map
packages/server/src/models/NotificationModel.d.ts
packages/server/src/models/NotificationModel.js
packages/server/src/models/NotificationModel.js.map
packages/server/src/models/NotificationModel.test.d.ts
packages/server/src/models/NotificationModel.test.js
packages/server/src/models/NotificationModel.test.js.map
packages/server/src/models/PermissionModel.d.ts
packages/server/src/models/PermissionModel.js
packages/server/src/models/PermissionModel.js.map
packages/server/src/models/SessionModel.d.ts
packages/server/src/models/SessionModel.js
packages/server/src/models/SessionModel.js.map
packages/server/src/models/UserModel.d.ts
packages/server/src/models/UserModel.js
packages/server/src/models/UserModel.js.map
packages/server/src/models/factory.d.ts
packages/server/src/models/factory.js
packages/server/src/models/factory.js.map
packages/server/src/models/utils/pagination.d.ts
packages/server/src/models/utils/pagination.js
packages/server/src/models/utils/pagination.js.map
packages/server/src/models/utils/pagination.test.d.ts
packages/server/src/models/utils/pagination.test.js
packages/server/src/models/utils/pagination.test.js.map
packages/server/src/routes/api/files.d.ts
packages/server/src/routes/api/files.js
packages/server/src/routes/api/files.js.map
packages/server/src/routes/api/index.d.ts
packages/server/src/routes/api/index.js
packages/server/src/routes/api/index.js.map
packages/server/src/routes/api/ping.d.ts
packages/server/src/routes/api/ping.js
packages/server/src/routes/api/ping.js.map
packages/server/src/routes/api/sessions.d.ts
packages/server/src/routes/api/sessions.js
packages/server/src/routes/api/sessions.js.map
packages/server/src/routes/default.d.ts
packages/server/src/routes/default.js
packages/server/src/routes/default.js.map
packages/server/src/routes/index/files.d.ts
packages/server/src/routes/index/files.js
packages/server/src/routes/index/files.js.map
packages/server/src/routes/index/home.d.ts
packages/server/src/routes/index/home.js
packages/server/src/routes/index/home.js.map
packages/server/src/routes/index/login.d.ts
packages/server/src/routes/index/login.js
packages/server/src/routes/index/login.js.map
packages/server/src/routes/index/logout.d.ts
packages/server/src/routes/index/logout.js
packages/server/src/routes/index/logout.js.map
packages/server/src/routes/index/notifications.d.ts
packages/server/src/routes/index/notifications.js
packages/server/src/routes/index/notifications.js.map
packages/server/src/routes/index/profile.d.ts
packages/server/src/routes/index/profile.js
packages/server/src/routes/index/profile.js.map
packages/server/src/routes/index/user.d.ts
packages/server/src/routes/index/user.js
packages/server/src/routes/index/user.js.map
packages/server/src/routes/index/users.d.ts
packages/server/src/routes/index/users.js
packages/server/src/routes/index/users.js.map
packages/server/src/routes/oauth2/authorize.d.ts
packages/server/src/routes/oauth2/authorize.js
packages/server/src/routes/oauth2/authorize.js.map
packages/server/src/routes/routes.d.ts
packages/server/src/routes/routes.js
packages/server/src/routes/routes.js.map
packages/server/src/services/MustacheService.d.ts
packages/server/src/services/MustacheService.js
packages/server/src/services/MustacheService.js.map
packages/server/src/tools/db-migrate.d.ts
packages/server/src/tools/db-migrate.js
packages/server/src/tools/db-migrate.js.map
packages/server/src/tools/dbTools.d.ts
packages/server/src/tools/dbTools.js
packages/server/src/tools/dbTools.js.map
packages/server/src/tools/generate-types.d.ts
packages/server/src/tools/generate-types.js
packages/server/src/tools/generate-types.js.map
packages/server/src/utils/TransactionHandler.d.ts
packages/server/src/utils/TransactionHandler.js
packages/server/src/utils/TransactionHandler.js.map
packages/server/src/utils/auth.d.ts
packages/server/src/utils/auth.js
packages/server/src/utils/auth.js.map
packages/server/src/utils/base64.d.ts
packages/server/src/utils/base64.js
packages/server/src/utils/base64.js.map
packages/server/src/utils/cache.d.ts
packages/server/src/utils/cache.js
packages/server/src/utils/cache.js.map
packages/server/src/utils/defaultView.d.ts
packages/server/src/utils/defaultView.js
packages/server/src/utils/defaultView.js.map
packages/server/src/utils/errors.d.ts
packages/server/src/utils/errors.js
packages/server/src/utils/errors.js.map
packages/server/src/utils/htmlUtils.d.ts
packages/server/src/utils/htmlUtils.js
packages/server/src/utils/htmlUtils.js.map
packages/server/src/utils/koaIf.d.ts
packages/server/src/utils/koaIf.js
packages/server/src/utils/koaIf.js.map
packages/server/src/utils/requestUtils.d.ts
packages/server/src/utils/requestUtils.js
packages/server/src/utils/requestUtils.js.map
packages/server/src/utils/routeUtils.d.ts
packages/server/src/utils/routeUtils.js
packages/server/src/utils/routeUtils.js.map
packages/server/src/utils/routeUtils.test.d.ts
packages/server/src/utils/routeUtils.test.js
packages/server/src/utils/routeUtils.test.js.map
packages/server/src/utils/testUtils.d.ts
packages/server/src/utils/testUtils.js
packages/server/src/utils/testUtils.js.map
packages/server/src/utils/testing/testRouters.d.ts
packages/server/src/utils/testing/testRouters.js
packages/server/src/utils/testing/testRouters.js.map
packages/server/src/utils/time.d.ts
packages/server/src/utils/time.js
packages/server/src/utils/time.js.map
packages/server/src/utils/types.d.ts
packages/server/src/utils/types.js
packages/server/src/utils/types.js.map
packages/server/src/utils/urlUtils.d.ts
packages/server/src/utils/urlUtils.js
packages/server/src/utils/urlUtils.js.map
packages/server/src/utils/uuidgen.d.ts
packages/server/src/utils/uuidgen.js
packages/server/src/utils/uuidgen.js.map
packages/tools/build-plugin-repository.d.ts
packages/tools/build-plugin-repository.js
packages/tools/build-plugin-repository.js.map
packages/tools/release-server.d.ts
packages/tools/release-server.js
packages/tools/release-server.js.map
# AUTO-GENERATED - EXCLUDED TYPESCRIPT BUILD

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 134 KiB

BIN
Assets/macOsIcon_2.psd Normal file

Binary file not shown.

3
Dockerfile.db Normal file
View File

@@ -0,0 +1,3 @@
FROM postgres:13.1
EXPOSE 5432

71
Dockerfile.server Normal file
View File

@@ -0,0 +1,71 @@
# https://versatile.nl/blog/deploying-lerna-web-apps-with-docker
FROM node:12
RUN apt-get update
RUN apt-get --yes install vim
ARG user=joplin
RUN useradd --create-home --shell /bin/bash $user
USER $user
ENV NODE_ENV development
WORKDIR /home/$user
RUN mkdir /home/$user/logs
# To take advantage of the Docker cache, we first copy all the package.json
# and package-lock.json files, as they rarely change? and then bootstrap
# all the packages.
#
# Note that bootstrapping the packages will run all the postinstall
# scripts, which means that for packages that have such scripts, we need to
# copy all the files.
#
# We can't run boostrap with "--ignore-scripts" because that would
# prevent certain sub-packages, such as sqlite3, from being built
COPY --chown=$user:$user package*.json ./
# Install the root scripts but don't run postinstall (which would bootstrap
# and build TypeScript files, but we don't have the TypeScript files at
# this point)
RUN npm install --ignore-scripts
COPY --chown=$user:$user packages/fork-sax/package*.json ./packages/fork-sax/
COPY --chown=$user:$user packages/lib/package*.json ./packages/lib/
COPY --chown=$user:$user packages/renderer/package*.json ./packages/renderer/
COPY --chown=$user:$user packages/tools/package*.json ./packages/tools/
COPY --chown=$user:$user packages/server/package*.json ./packages/server/
COPY --chown=$user:$user lerna.json .
COPY --chown=$user:$user tsconfig.json .
# The following have postinstall scripts so we need to copy all the files.
# Since they should rarely change this is not an issue
COPY --chown=$user:$user packages/turndown ./packages/turndown
COPY --chown=$user:$user packages/turndown-plugin-gfm ./packages/turndown-plugin-gfm
COPY --chown=$user:$user packages/fork-htmlparser2 ./packages/fork-htmlparser2
RUN ls -la /home/$user
# Then bootstrap only, without compiling the TypeScript files
RUN npm run bootstrap
COPY --chown=$user:$user packages/fork-sax ./packages/fork-sax
COPY --chown=$user:$user packages/lib ./packages/lib
COPY --chown=$user:$user packages/renderer ./packages/renderer
COPY --chown=$user:$user packages/tools ./packages/tools
COPY --chown=$user:$user packages/server ./packages/server
# Finally build everything, in particular the TypeScript files.
RUN npm run build
EXPOSE ${JOPLIN_PORT}
CMD [ "npm", "--prefix", "packages/server", "start" ]

View File

@@ -164,18 +164,12 @@ DESKTOP=${DESKTOP,,} # convert to lower case
echo 'Create Desktop icon...'
if [[ $DESKTOP =~ .*gnome.*|.*kde.*|.*xfce.*|.*mate.*|.*lxqt.*|.*unity.*|.*x-cinnamon.*|.*deepin.*|.*pantheon.*|.*lxde.*|.*i3.* ]]
then
: "${TMPDIR:=$TEMP_DIR}"
# This command extracts to squashfs-root by default and can't be changed...
# So we run it in the tmp directory and clean up after ourselves
(cd $TMPDIR && ~/.joplin/Joplin.AppImage --appimage-extract joplin.desktop &> /dev/null)
APPIMAGE_VERSION=$(grep "^X-AppImage-Version=" $TMPDIR/squashfs-root/joplin.desktop | head -n 1 | cut -d "=" -f 2)
rm -rf $TMPDIR/squashfs-root
# Only delete the desktop file if it will be replaced
rm -f ~/.local/share/applications/appimagekit-joplin.desktop
# On some systems this directory doesn't exist by default
mkdir -p ~/.local/share/applications
echo -e "[Desktop Entry]\nEncoding=UTF-8\nName=Joplin\nComment=Joplin for Desktop\nExec=${HOME}/.joplin/Joplin.AppImage\nIcon=joplin\nStartupWMClass=Joplin\nType=Application\nCategories=Office;\n#${APPIMAGE_VERSION}" >> ~/.local/share/applications/appimagekit-joplin.desktop
echo -e "[Desktop Entry]\nEncoding=UTF-8\nName=Joplin\nComment=Joplin for Desktop\nExec=${HOME}/.joplin/Joplin.AppImage\nIcon=joplin\nStartupWMClass=Joplin\nType=Application\nCategories=Office;" >> ~/.local/share/applications/appimagekit-joplin.desktop
# Update application icons
[[ `command -v update-desktop-database` ]] && update-desktop-database ~/.local/share/applications && update-desktop-database ~/.local/share/icons
print "${COLOR_GREEN}OK${COLOR_RESET}"

View File

@@ -18,17 +18,23 @@ Three types of applications are available: for the **desktop** (Windows, macOS a
## Desktop applications
Operating System | Download | Alternative
---|---|---
Windows (32 and 64-bit) | <a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-Setup-1.4.19.exe'><img alt='Get it on Windows' width="134px" src='https://joplinapp.org/images/BadgeWindows.png'/></a> | Or get the <a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/JoplinPortable.exe'>Portable version</a><br><br>The [portable application](https://en.wikipedia.org/wiki/Portable_application) allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called "JoplinProfile" next to the executable file.
macOS | <a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-1.4.19.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a> | -
Linux | <a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-1.4.19.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a> | The recommended way is to use the following installation script as it will handle the desktop icon too:<br><br> `wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh \| bash`
Operating System | Download
---|---
Windows (32 and 64-bit) | <a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-Setup-1.5.11.exe'><img alt='Get it on Windows' width="134px" src='https://joplinapp.org/images/BadgeWindows.png'/></a>
macOS | <a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-1.5.11.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a>
Linux | <a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-1.5.11.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a>
**On Windows**, you may also use the <a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/JoplinPortable.exe'>Portable version</a>. The [portable application](https://en.wikipedia.org/wiki/Portable_application) allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called "JoplinProfile" next to the executable file.
**On Linux**, the recommended way is to use the following installation script as it will handle the desktop icon too:
<pre><code style="word-break: break-all">wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bash</code></pre>
## Mobile applications
Operating System | Download | Alt. Download
---|---|---
Android | <a href='https://play.google.com/store/apps/details?id=net.cozic.joplin&utm_source=GitHub&utm_campaign=README&pcampaignid=MKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'><img alt='Get it on Google Play' height="40px" src='https://joplinapp.org/images/BadgeAndroid.png'/></a> | or download the APK file: [64-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.4.11/joplin-v1.4.11.apk) [32-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.4.11/joplin-v1.4.11-32bit.apk)
Android | <a href='https://play.google.com/store/apps/details?id=net.cozic.joplin&utm_source=GitHub&utm_campaign=README&pcampaignid=MKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'><img alt='Get it on Google Play' height="40px" src='https://joplinapp.org/images/BadgeAndroid.png'/></a> | or download the APK file: [64-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.6.7/joplin-v1.6.7.apk) [32-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.6.7/joplin-v1.6.7-32bit.apk)
iOS | <a href='https://itunes.apple.com/us/app/joplin/id1315599797'><img alt='Get it on the App Store' height="40px" src='https://joplinapp.org/images/BadgeIOS.png'/></a> | -
## Terminal application
@@ -109,6 +115,8 @@ The Web Clipper is a browser extension that allows you to save web pages and scr
- [Sync Lock spec](https://github.com/laurent22/joplin/blob/dev/readme/spec/sync_lock.md)
- [Plugin Architecture spec](https://github.com/laurent22/joplin/blob/dev/readme/spec/plugins.md)
- [Search Sorting spec](https://github.com/laurent22/joplin/blob/dev/readme/spec/search_sorting.md)
- [Server: File URL Format](https://github.com/laurent22/joplin/blob/dev/readme/spec/server_file_url_format.md)
- [Server: Delta Sync](https://github.com/laurent22/joplin/blob/dev/readme/spec/server_delta_sync.md)
- Google Summer of Code 2020
@@ -227,6 +235,7 @@ WebDAV-compatible services that are known to work with Joplin:
- [OwnCloud](https://owncloud.org/)
- [Seafile](https://www.seafile.com/)
- [Stack](https://www.transip.nl/stack/)
- [Synology WebDAV Server](https://www.synology.com/en-us/dsm/packages/WebDAVServer)
- [WebDAV Nav](https://www.schimera.com/products/webdav-nav-server/), a macOS server.
- [Zimbra](https://www.zimbra.com/)
@@ -436,45 +445,45 @@ Current translations:
<!-- LOCALE-TABLE-AUTO-GENERATED -->
&nbsp; | Language | Po File | Last translator | Percent done
---|---|---|---|---
![](https://joplinapp.org/images/flags/country-4x3/arableague.png) | Arabic | [ar](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ar.po) | [أحمد باشا إبراهيم](mailto:fi_ahmed_bacha@esi.dz) | 77%
![](https://joplinapp.org/images/flags/es/basque_country.png) | Basque | [eu](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eu.po) | juan.abasolo@ehu.eus | 33%
![](https://joplinapp.org/images/flags/country-4x3/ba.png) | Bosnian (Bosna i Hercegovina) | [bs_BA](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bs_BA.po) | [Derviš T.](mailto:dervis.t@pm.me) | 79%
![](https://joplinapp.org/images/flags/country-4x3/bg.png) | Bulgarian (България) | [bg_BG](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bg_BG.po) | | 64%
![](https://joplinapp.org/images/flags/es/catalonia.png) | Catalan | [ca](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ca.po) | jmontane, 2019 | 92%
![](https://joplinapp.org/images/flags/country-4x3/arableague.png) | Arabic | [ar](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ar.po) | [أحمد باشا إبراهيم](mailto:fi_ahmed_bacha@esi.dz) | 75%
![](https://joplinapp.org/images/flags/es/basque_country.png) | Basque | [eu](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eu.po) | juan.abasolo@ehu.eus | 32%
![](https://joplinapp.org/images/flags/country-4x3/ba.png) | Bosnian (Bosna i Hercegovina) | [bs_BA](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bs_BA.po) | [Derviš T.](mailto:dervis.t@pm.me) | 77%
![](https://joplinapp.org/images/flags/country-4x3/bg.png) | Bulgarian (България) | [bg_BG](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bg_BG.po) | | 62%
![](https://joplinapp.org/images/flags/es/catalonia.png) | Catalan | [ca](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ca.po) | jmontane, 2019 | 89%
![](https://joplinapp.org/images/flags/country-4x3/hr.png) | Croatian (Hrvatska) | [hr_HR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/hr_HR.po) | [Hrvoje Mandić](mailto:trbuhom@net.hr) | 26%
![](https://joplinapp.org/images/flags/country-4x3/cz.png) | Czech (Česká republika) | [cs_CZ](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/cs_CZ.po) | [Lukas Helebrandt](mailto:lukas@aiya.cz) | 96%
![](https://joplinapp.org/images/flags/country-4x3/dk.png) | Dansk (Danmark) | [da_DK](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/da_DK.po) | Mustafa Al-Dailemi (dailemi@hotmail.com)Language-Team: | 79%
![](https://joplinapp.org/images/flags/country-4x3/de.png) | Deutsch (Deutschland) | [de_DE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/de_DE.po) | [Ettore Atalan](mailto:atalanttore@users.noreply.github.com) | 96%
![](https://joplinapp.org/images/flags/country-4x3/ee.png) | Eesti Keel (Eesti) | [et_EE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/et_EE.po) | | 63%
![](https://joplinapp.org/images/flags/country-4x3/cz.png) | Czech (Česká republika) | [cs_CZ](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/cs_CZ.po) | [Lukas Helebrandt](mailto:lukas@aiya.cz) | 93%
![](https://joplinapp.org/images/flags/country-4x3/dk.png) | Dansk (Danmark) | [da_DK](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/da_DK.po) | Mustafa Al-Dailemi (dailemi@hotmail.com)Language-Team: | 77%
![](https://joplinapp.org/images/flags/country-4x3/de.png) | Deutsch (Deutschland) | [de_DE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/de_DE.po) | [Ettore Atalan](mailto:atalanttore@users.noreply.github.com) | 95%
![](https://joplinapp.org/images/flags/country-4x3/ee.png) | Eesti Keel (Eesti) | [et_EE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/et_EE.po) | | 61%
![](https://joplinapp.org/images/flags/country-4x3/gb.png) | English (United Kingdom) | [en_GB](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/en_GB.po) | | 100%
![](https://joplinapp.org/images/flags/country-4x3/us.png) | English (United States of America) | [en_US](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/en_US.po) | | 100%
![](https://joplinapp.org/images/flags/country-4x3/es.png) | Español (España) | [es_ES](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/es_ES.po) | [Mario Campo](mailto:mario.campo@gmail.com) | 96%
![](https://joplinapp.org/images/flags/esperanto.png) | Esperanto | [eo](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eo.po) | Marton Paulo | 36%
![](https://joplinapp.org/images/flags/country-4x3/fi.png) | Finnish (Suomi) | [fi_FI](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fi_FI.po) | | 97%
![](https://joplinapp.org/images/flags/country-4x3/fr.png) | Français (France) | [fr_FR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fr_FR.po) | Laurent Cozic | 96%
![](https://joplinapp.org/images/flags/es/galicia.png) | Galician (España) | [gl_ES](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/gl_ES.po) | [Marcos Lans](mailto:marcoslansgarza@gmail.com) | 42%
![](https://joplinapp.org/images/flags/country-4x3/id.png) | Indonesian (Indonesia) | [id_ID](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/id_ID.po) | [Fathy AR](mailto:16875937+fathyar@users.noreply.github.com) | 88%
![](https://joplinapp.org/images/flags/country-4x3/it.png) | Italiano (Italia) | [it_IT](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/it_IT.po) | [Alessandro Bernardello](mailto:mailfilledwithspam@gmail.com) | 97%
![](https://joplinapp.org/images/flags/country-4x3/be.png) | Nederlands (België, Belgique, Belgien) | [nl_BE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_BE.po) | | 33%
![](https://joplinapp.org/images/flags/country-4x3/nl.png) | Nederlands (Nederland) | [nl_NL](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_NL.po) | [MetBril](mailto:metbril@users.noreply.github.com) | 96%
![](https://joplinapp.org/images/flags/country-4x3/no.png) | Norwegian (Norge, Noreg) | [nb_NO](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nb_NO.po) | [Mats Estensen](mailto:code@mxe.no) | 85%
![](https://joplinapp.org/images/flags/country-4x3/ir.png) | Persian | [fa](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fa.po) | [Kourosh Firoozbakht](mailto:kourox@protonmail.com) | 79%
![](https://joplinapp.org/images/flags/country-4x3/pl.png) | Polski (Polska) | [pl_PL](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pl_PL.po) | | 95%
![](https://joplinapp.org/images/flags/country-4x3/br.png) | Português (Brasil) | [pt_BR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_BR.po) | [Renato Nunes Bastos](mailto:rnbastos@gmail.com) | 93%
![](https://joplinapp.org/images/flags/country-4x3/pt.png) | Português (Portugal) | [pt_PT](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_PT.po) | [João Duarte](mailto:jduar@protonmail.com) | 95%
![](https://joplinapp.org/images/flags/country-4x3/ro.png) | Română | [ro](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ro.po) | [Cristi Duluta](mailto:cristi.duluta@gmail.com) | 74%
![](https://joplinapp.org/images/flags/country-4x3/si.png) | Slovenian (Slovenija) | [sl_SI](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sl_SI.po) | | 41%
![](https://joplinapp.org/images/flags/country-4x3/se.png) | Svenska | [sv](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sv.po) | [Jonatan Nyberg](mailto:jonatan@autistici.org) | 68%
![](https://joplinapp.org/images/flags/country-4x3/th.png) | Thai (ประเทศไทย) | [th_TH](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/th_TH.po) | | 50%
![](https://joplinapp.org/images/flags/country-4x3/vi.png) | Tiếng Việt | [vi](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/vi.po) | | 82%
![](https://joplinapp.org/images/flags/country-4x3/tr.png) | Türkçe (Türkiye) | [tr_TR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/tr_TR.po) | [Arda Kılıçdağı](mailto:arda@kilicdagi.com) | 94%
![](https://joplinapp.org/images/flags/country-4x3/gr.png) | Ελληνικά (Ελλάδα) | [el_GR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/el_GR.po) | [Harris Arvanitis](mailto:xaris@tuta.io) | 92%
![](https://joplinapp.org/images/flags/country-4x3/ru.png) | Русский (Россия) | [ru_RU](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ru_RU.po) | [Sergey Segeda](mailto:thesermanarm@gmail.com) | 92%
![](https://joplinapp.org/images/flags/country-4x3/rs.png) | српски језик (Србија) | [sr_RS](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sr_RS.po) | | 69%
![](https://joplinapp.org/images/flags/country-4x3/cn.png) | 中文 (简体) | [zh_CN](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_CN.po) | [WhiredPlanck](mailto:fungdaat31@outlook.com) | 97%
![](https://joplinapp.org/images/flags/country-4x3/tw.png) | 中文 (繁體) | [zh_TW](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_TW.po) | [Yaoze Ye](mailto:yaozeye@yahoo.co.jp) | 91%
![](https://joplinapp.org/images/flags/country-4x3/jp.png) | 日本語 (日本) | [ja_JP](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ja_JP.po) | [genneko](mailto:genneko217@gmail.com) | 97%
![](https://joplinapp.org/images/flags/country-4x3/kr.png) | 한국어 | [ko](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ko.po) | [Ji-Hyeon Gim](mailto:potatogim@potatogim.net) | 97%
![](https://joplinapp.org/images/flags/country-4x3/es.png) | Español (España) | [es_ES](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/es_ES.po) | [Mario Campo](mailto:mario.campo@gmail.com) | 99%
![](https://joplinapp.org/images/flags/esperanto.png) | Esperanto | [eo](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eo.po) | Marton Paulo | 35%
![](https://joplinapp.org/images/flags/country-4x3/fi.png) | Finnish (Suomi) | [fi_FI](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fi_FI.po) | | 94%
![](https://joplinapp.org/images/flags/country-4x3/fr.png) | Français (France) | [fr_FR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fr_FR.po) | Laurent Cozic | 99%
![](https://joplinapp.org/images/flags/es/galicia.png) | Galician (España) | [gl_ES](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/gl_ES.po) | [Marcos Lans](mailto:marcoslansgarza@gmail.com) | 40%
![](https://joplinapp.org/images/flags/country-4x3/id.png) | Indonesian (Indonesia) | [id_ID](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/id_ID.po) | [Fathy AR](mailto:16875937+fathyar@users.noreply.github.com) | 85%
![](https://joplinapp.org/images/flags/country-4x3/it.png) | Italiano (Italia) | [it_IT](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/it_IT.po) | [Alessandro Bernardello](mailto:mailfilledwithspam@gmail.com) | 96%
![](https://joplinapp.org/images/flags/country-4x3/be.png) | Nederlands (België, Belgique, Belgien) | [nl_BE](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_BE.po) | | 32%
![](https://joplinapp.org/images/flags/country-4x3/nl.png) | Nederlands (Nederland) | [nl_NL](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_NL.po) | [MetBril](mailto:metbril@users.noreply.github.com) | 93%
![](https://joplinapp.org/images/flags/country-4x3/no.png) | Norwegian (Norge, Noreg) | [nb_NO](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nb_NO.po) | [Mats Estensen](mailto:code@mxe.no) | 82%
![](https://joplinapp.org/images/flags/country-4x3/ir.png) | Persian | [fa](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fa.po) | [Kourosh Firoozbakht](mailto:kourox@protonmail.com) | 77%
![](https://joplinapp.org/images/flags/country-4x3/pl.png) | Polski (Polska) | [pl_PL](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pl_PL.po) | | 92%
![](https://joplinapp.org/images/flags/country-4x3/br.png) | Português (Brasil) | [pt_BR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_BR.po) | [Renato Nunes Bastos](mailto:rnbastos@gmail.com) | 91%
![](https://joplinapp.org/images/flags/country-4x3/pt.png) | Português (Portugal) | [pt_PT](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_PT.po) | [João Duarte](mailto:jduar@protonmail.com) | 92%
![](https://joplinapp.org/images/flags/country-4x3/ro.png) | Română | [ro](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ro.po) | [Cristi Duluta](mailto:cristi.duluta@gmail.com) | 72%
![](https://joplinapp.org/images/flags/country-4x3/si.png) | Slovenian (Slovenija) | [sl_SI](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sl_SI.po) | | 40%
![](https://joplinapp.org/images/flags/country-4x3/se.png) | Svenska | [sv](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sv.po) | [Jonatan Nyberg](mailto:jonatan@autistici.org) | 66%
![](https://joplinapp.org/images/flags/country-4x3/th.png) | Thai (ประเทศไทย) | [th_TH](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/th_TH.po) | | 49%
![](https://joplinapp.org/images/flags/country-4x3/vi.png) | Tiếng Việt | [vi](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/vi.po) | | 79%
![](https://joplinapp.org/images/flags/country-4x3/tr.png) | Türkçe (Türkiye) | [tr_TR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/tr_TR.po) | [Arda Kılıçdağı](mailto:arda@kilicdagi.com) | 99%
![](https://joplinapp.org/images/flags/country-4x3/gr.png) | Ελληνικά (Ελλάδα) | [el_GR](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/el_GR.po) | [Harris Arvanitis](mailto:xaris@tuta.io) | 89%
![](https://joplinapp.org/images/flags/country-4x3/ru.png) | Русский (Россия) | [ru_RU](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ru_RU.po) | [Sergey Segeda](mailto:thesermanarm@gmail.com) | 96%
![](https://joplinapp.org/images/flags/country-4x3/rs.png) | српски језик (Србија) | [sr_RS](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sr_RS.po) | | 67%
![](https://joplinapp.org/images/flags/country-4x3/cn.png) | 中文 (简体) | [zh_CN](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_CN.po) | [WhiredPlanck](mailto:fungdaat31@outlook.com) | 99%
![](https://joplinapp.org/images/flags/country-4x3/tw.png) | 中文 (繁體) | [zh_TW](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_TW.po) | [Yaoze Ye](mailto:yaozeye@yahoo.co.jp) | 95%
![](https://joplinapp.org/images/flags/country-4x3/jp.png) | 日本語 (日本) | [ja_JP](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ja_JP.po) | [genneko](mailto:genneko217@gmail.com) | 96%
![](https://joplinapp.org/images/flags/country-4x3/kr.png) | 한국어 | [ko](https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ko.po) | [Ji-Hyeon Gim](mailto:potatogim@potatogim.net) | 96%
<!-- LOCALE-TABLE-AUTO-GENERATED -->
# Contributors

View File

@@ -0,0 +1,28 @@
# For development, the easiest might be to only start the Postgres container and
# run the app directly with `npm start`. Or use sqlite3.
version: '3'
services:
# app:
# build:
# context: .
# dockerfile: Dockerfile.server-dev
# ports:
# - "22300:22300"
# # volumes:
# # - ./packages/server/:/var/www/joplin/packages/server/
# # - /var/www/joplin/packages/server/node_modules/
db:
build:
context: .
dockerfile: Dockerfile.db
ports:
- "5432:5432"
environment:
# TODO: Considering the database is only exposed to the
# application, and not to the outside world, is there a need to
# pick a secure password?
- POSTGRES_PASSWORD=joplin
- POSTGRES_USER=joplin
- POSTGRES_DB=joplin

40
docker-compose.server.yml Normal file
View File

@@ -0,0 +1,40 @@
version: '3'
services:
app:
environment:
- JOPLIN_BASE_URL=${JOPLIN_BASE_URL}
- JOPLIN_PORT=${JOPLIN_PORT}
restart: unless-stopped
build:
context: .
dockerfile: Dockerfile.server
ports:
- "${JOPLIN_PORT}:${JOPLIN_PORT}"
# volumes:
# # Mount the server directory so that it's possible to edit file
# # while the container is running. However don't mount the
# # node_modules directory which will be specific to the Docker
# # image (eg native modules will be built for Ubuntu, while the
# # container might be running in Windows)
# # https://stackoverflow.com/a/37898591/561309
# - ./packages/server:/home/joplin/packages/server
# - /home/joplin/packages/server/node_modules/
db:
restart: unless-stopped
# By default, the Postgres image saves the data to a Docker volume,
# so it persists whenever the server is restarted using
# `docker-compose up`. Note that it would however be deleted when
# running `docker-compose down`.
build:
context: .
dockerfile: Dockerfile.db
ports:
- "5432:5432"
environment:
# TODO: Considering the database is only exposed to the
# application, and not to the outside world, is there a need to
# pick a secure password?
- POSTGRES_PASSWORD=joplin
- POSTGRES_USER=joplin
- POSTGRES_DB=joplin

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/get_started/plugins.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/get_started/plugins.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -470,7 +472,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/get_started/plugins.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/overview.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/overview.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -462,7 +464,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/overview.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/development_m
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/development_m
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -441,7 +443,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/development_m
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@@ -150,13 +150,24 @@
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Registers a new content script. Unlike regular plugin code, which runs in a separate process, content scripts run within the main process code
and thus allow improved performances and more customisations in specific cases. It can be used for example to load a Markdown or editor plugin.</p>
<p>Registers a new content script. Unlike regular plugin code, which runs in
a separate process, content scripts run within the main process code and
thus allow improved performances and more customisations in specific
cases. It can be used for example to load a Markdown or editor plugin.</p>
</div>
<p>Note that registering a content script in itself will do nothing - it will only be loaded in specific cases by the relevant app modules
(eg. the Markdown renderer or the code editor). So it is not a way to inject and run arbitrary code in the app, which for safety and performance reasons is not supported.</p>
<p><a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/content_script">View the renderer demo plugin</a>
<a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/codemirror_content_script">View the editor demo plugin</a></p>
<p>Note that registering a content script in itself will do nothing - it
will only be loaded in specific cases by the relevant app modules (eg.
the Markdown renderer or the code editor). So it is not a way to inject
and run arbitrary code in the app, which for safety and performance
reasons is not supported.</p>
<p>The plugin generator provides a way to build any content script you might
want to package as well as its dependencies. See the <a href="https://github.com/laurent22/joplin/blob/dev/packages/generator-joplin/README.md">Plugin Generator
doc</a>
for more information.</p>
<ul>
<li><a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/content_script">View the renderer demo plugin</a></li>
<li><a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/codemirror_content_script">View the editor demo plugin</a></li>
</ul>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">

View File

@@ -124,7 +124,7 @@
<p>Gets a global setting value, including app-specific settings and those set by other plugins.</p>
</div>
<p>The list of available settings is not documented yet, but can be found by looking at the source code:</p>
<p><a href="https://github.com/laurent22/joplin/blob/3539a452a359162c461d2849829d2d42973eab50/packages/app-mobile/lib/models/Setting.ts#L142">https://github.com/laurent22/joplin/blob/3539a452a359162c461d2849829d2d42973eab50/packages/app-mobile/lib/models/Setting.ts#L142</a></p>
<p><a href="https://github.com/laurent22/joplin/blob/dev/packages/lib/models/Setting.ts#L142">https://github.com/laurent22/joplin/blob/dev/packages/lib/models/Setting.ts#L142</a></p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">

View File

@@ -117,6 +117,7 @@
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewsdialogs.html#addscript" class="tsd-kind-icon">add<wbr>Script</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewsdialogs.html#create" class="tsd-kind-icon">create</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewsdialogs.html#open" class="tsd-kind-icon">open</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewsdialogs.html#setbuttons" class="tsd-kind-icon">set<wbr>Buttons</a></li>
@@ -131,6 +132,38 @@
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="addscript" class="tsd-anchor"></a>
<h3>add<wbr>Script</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">add<wbr>Script<span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a>, scriptPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Adds and loads a new JS or CSS files into the dialog.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>handle: <a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a></h5>
</li>
<li>
<h5>scriptPath: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<!-- JOPLINCHANGE
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="create" class="tsd-anchor"></a>
<h3>create</h3>
@@ -304,6 +337,9 @@
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="joplinviewsdialogs.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewsdialogs.html#addscript" class="tsd-kind-icon">add<wbr>Script</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewsdialogs.html#create" class="tsd-kind-icon">create</a>
</li>

View File

@@ -99,8 +99,11 @@
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#addscript" class="tsd-kind-icon">add<wbr>Script</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#create" class="tsd-kind-icon">create</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#hide" class="tsd-kind-icon">hide</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#onmessage" class="tsd-kind-icon">on<wbr>Message</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#sethtml" class="tsd-kind-icon">set<wbr>Html</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#show" class="tsd-kind-icon">show</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="joplinviewspanels.html#visible" class="tsd-kind-icon">visible</a></li>
</ul>
</section>
</div>
@@ -167,6 +170,35 @@
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="hide" class="tsd-anchor"></a>
<h3>hide</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">hide<span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Hides the panel</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>handle: <a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a></h5>
</li>
</ul>
<!-- JOPLINCHANGE
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
@@ -231,6 +263,67 @@
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="show" class="tsd-anchor"></a>
<h3>show</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">show<span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a>, show<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Shows the panel</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>handle: <a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> show: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = true</span></h5>
</li>
</ul>
<!-- JOPLINCHANGE
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="visible" class="tsd-anchor"></a>
<h3>visible</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">visible<span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Tells whether the panel is visible or not</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>handle: <a href="../globals.html#viewhandle" class="tsd-signature-type">ViewHandle</a></h5>
</li>
</ul>
<!-- JOPLINCHANGE
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">&gt;</span></h4>
-->
</li>
</ul>
@@ -263,12 +356,21 @@
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#create" class="tsd-kind-icon">create</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#hide" class="tsd-kind-icon">hide</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#onmessage" class="tsd-kind-icon">on<wbr>Message</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#sethtml" class="tsd-kind-icon">set<wbr>Html</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#show" class="tsd-kind-icon">show</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="joplinviewspanels.html#visible" class="tsd-kind-icon">visible</a>
</li>
</ul>
</li>
</ul>

View File

@@ -88,7 +88,8 @@
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Registers a new CodeMirror plugin, which should follow the template below.</p>
<p>Registers a new CodeMirror plugin, which should follow the template
below.</p>
</div>
<pre><code class="language-javascript"><span class="hljs-built_in">module</span>.exports = {
<span class="hljs-attr">default</span>: <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">context</span>) </span>{
@@ -98,8 +99,8 @@
},
<span class="hljs-attr">codeMirrorResources</span>: [],
<span class="hljs-attr">codeMirrorOptions</span>: {
<span class="hljs-comment">// ...</span>
},
<span class="hljs-comment">// ...</span>
},
<span class="hljs-attr">assets</span>: {
<span class="hljs-comment">// ...</span>
},
@@ -107,19 +108,42 @@
}
}</code></pre>
<ul>
<li><p>The <code>context</code> argument is currently unused but could be used later on to provide access to your own plugin so that the content script and plugin can communicate.</p>
<li><p>The <code>context</code> argument is currently unused but could be used later
on to provide access to your own plugin so that the content script
and plugin can communicate.</p>
</li>
<li><p>The <code>plugin</code> key is your CodeMirror plugin. This is where you can register new commands with CodeMirror or interact with the CodeMirror instance as needed.</p>
<li><p>The <code>plugin</code> key is your CodeMirror plugin. This is where you can
register new commands with CodeMirror or interact with the
CodeMirror instance as needed.</p>
</li>
<li><p>The <code>codeMirrorResources</code> key is an array of CodeMirror resources that will be loaded and attached to the CodeMirror module. These are made up of addons, keymaps, and modes. For example, for a plugin that want&#39;s to enable clojure highlighting in code blocks. <code>codeMirrorResources</code> would be set to <code>[&#39;mode/clojure/clojure&#39;]</code>.</p>
<li><p>The <code>codeMirrorResources</code> key is an array of CodeMirror resources
that will be loaded and attached to the CodeMirror module. These
are made up of addons, keymaps, and modes. For example, for a
plugin that want&#39;s to enable clojure highlighting in code blocks.
<code>codeMirrorResources</code> would be set to <code>[&#39;mode/clojure/clojure&#39;]</code>.</p>
</li>
<li><p>The <code>codeMirrorOptions</code> key contains all the <a href="https://codemirror.net/doc/manual.html#config">CodeMirror</a> options that will be set or changed by this plugin. New options can alse be declared via <a href="https://codemirror.net/doc/manual.html#defineOption"><code>CodeMirror.defineOption</code></a>, and then have their value set here. For example, a plugin that enables line numbers would set <code>codeMirrorOptions</code> to <code>{&#39;lineNumbers&#39;: true}</code>.</p>
<li><p>The <code>codeMirrorOptions</code> key contains all the
<a href="https://codemirror.net/doc/manual.html#config">CodeMirror</a>
options that will be set or changed by this plugin. New options
can alse be declared via
<a href="https://codemirror.net/doc/manual.html#defineOption"><code>CodeMirror.defineOption</code></a>,
and then have their value set here. For example, a plugin that
enables line numbers would set <code>codeMirrorOptions</code> to
<code>{&#39;lineNumbers&#39;: true}</code>.</p>
</li>
<li><p>Using the <strong>optional</strong> <code>assets</code> key you may specify <strong>only</strong> CSS assets that should be loaded in the rendered HTML document. Check for example the Joplin <a href="https://github.com/laurent22/joplin/blob/dev/packages/app-mobile/lib/joplin-renderer/MdToHtml/rules/mermaid.ts">Mermaid plugin</a> to see how the data should be structured.</p>
<li><p>Using the <strong>optional</strong> <code>assets</code> key you may specify <strong>only</strong> CSS
assets that should be loaded in the rendered HTML document. Check
for example the Joplin [Mermaid
plugin](<a href="https://github.com/laurent22/joplin/blob/dev/packages/renderer/MdToHtml/rules/mermaid.ts">https://github.com/laurent22/joplin/blob/dev/packages/renderer/MdToHtml/rules/mermaid.ts</a>)
to see how the data should be structured.</p>
</li>
</ul>
<p>One of the <code>plugin</code>, <code>codeMirrorResources</code>, or <code>codeMirrorOptions</code> keys must be provided for the plugin to be valid. Having multiple or all provided is also okay.</p>
<p>See the <a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/codemirror_content_script">demo plugin</a> for an example of all these keys being used in one plugin.</p>
<p>One of the <code>plugin</code>, <code>codeMirrorResources</code>, or <code>codeMirrorOptions</code>
keys must be provided for the plugin to be valid. Having multiple or
all provided is also okay.</p>
<p>See the <a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/codemirror_content_script">demo
plugin</a>
for an example of all these keys being used in one plugin.</p>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum">
@@ -130,7 +154,8 @@
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Registers a new Markdown-It plugin, which should follow the template below.</p>
<p>Registers a new Markdown-It plugin, which should follow the template
below.</p>
</div>
<pre><code class="language-javascript"><span class="hljs-built_in">module</span>.exports = {
<span class="hljs-attr">default</span>: <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">context</span>) </span>{
@@ -144,15 +169,50 @@
}
}
}</code></pre>
<p>See <a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/content_script">the
demo</a>
for a simple Markdown-it plugin example.</p>
<a href="#exported-members" id="exported-members" style="color: inherit; text-decoration: none;">
<h2>Exported members</h2>
</a>
<ul>
<li><p>The <code>context</code> argument is currently unused but could be used later on to provide access to your own plugin so that the content script and plugin can communicate.</p>
<li><p>The <code>context</code> argument is currently unused but could be used later
on to provide access to your own plugin so that the content script
and plugin can communicate.</p>
</li>
<li><p>The <strong>required</strong> <code>plugin</code> key is the actual Markdown-It plugin - check the <a href="https://github.com/markdown-it/markdown-it">official doc</a> for more information. The <code>options</code> parameter is of type <a href="https://github.com/laurent22/joplin/blob/dev/packages/app-mobile/lib/joplin-renderer/MdToHtml.ts">RuleOptions</a>, which contains a number of options, mostly useful for Joplin&#39;s internal code.</p>
<li><p>The <strong>required</strong> <code>plugin</code> key is the actual Markdown-It plugin -
check the [official
doc](<a href="https://github.com/markdown-it/markdown-it">https://github.com/markdown-it/markdown-it</a>) for more
information. The <code>options</code> parameter is of type
<a href="https://github.com/laurent22/joplin/blob/dev/packages/renderer/MdToHtml.ts">RuleOptions</a>,
which contains a number of options, mostly useful for Joplin&#39;s
internal code.</p>
</li>
<li><p>Using the <strong>optional</strong> <code>assets</code> key you may specify assets such as JS or CSS that should be loaded in the rendered HTML document. Check for example the Joplin <a href="https://github.com/laurent22/joplin/blob/dev/packages/app-mobile/lib/joplin-renderer/MdToHtml/rules/mermaid.ts">Mermaid plugin</a> to see how the data should be structured.</p>
<li><p>Using the <strong>optional</strong> <code>assets</code> key you may specify assets such as
JS or CSS that should be loaded in the rendered HTML document.
Check for example the Joplin [Mermaid
plugin](<a href="https://github.com/laurent22/joplin/blob/dev/packages/renderer/MdToHtml/rules/mermaid.ts">https://github.com/laurent22/joplin/blob/dev/packages/renderer/MdToHtml/rules/mermaid.ts</a>)
to see how the data should be structured.</p>
</li>
</ul>
<p>To include a regular Markdown-It plugin, that doesn&#39;t make use of any Joplin-specific features, you would simply create a file such as this:</p>
<a href="#passing-messages-from-the-content-script-to-your-plugin" id="passing-messages-from-the-content-script-to-your-plugin" style="color: inherit; text-decoration: none;">
<h2>Passing messages from the content script to your plugin</h2>
</a>
<p>The application provides the following function to allow executing
commands from the rendered HTML code:</p>
<p><code>webviewApi.executeCommand(commandName, ...args)</code></p>
<p>So you can use this mechanism to pass messages from the note viewer
to your own plugin. To do so you would define a command, using
<code>joplin.commands.register</code>, then you would call this command using
the <code>webviewApi</code> object. See again <a href="https://github.com/laurent22/joplin/tree/dev/packages/app-cli/tests/support/plugins/content_script">the
demo</a>
to see how this can be done.</p>
<a href="#registering-an-existing-markdown-it-plugin" id="registering-an-existing-markdown-it-plugin" style="color: inherit; text-decoration: none;">
<h2>Registering an existing Markdown-it plugin</h2>
</a>
<p>To include a regular Markdown-It plugin, that doesn&#39;t make use of
any Joplin-specific features, you would simply create a file such as
this:</p>
<pre><code class="language-javascript"><span class="hljs-built_in">module</span>.exports = {
<span class="hljs-attr">default</span>: <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">context</span>) </span>{
<span class="hljs-keyword">return</span> {

View File

@@ -75,9 +75,11 @@
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#edit" class="tsd-kind-icon">Edit</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#editorcontextmenu" class="tsd-kind-icon">Editor<wbr>Context<wbr>Menu</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#file" class="tsd-kind-icon">File</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#foldercontextmenu" class="tsd-kind-icon">Folder<wbr>Context<wbr>Menu</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#help" class="tsd-kind-icon">Help</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#note" class="tsd-kind-icon">Note</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#notelistcontextmenu" class="tsd-kind-icon">Note<wbr>List<wbr>Context<wbr>Menu</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#tagcontextmenu" class="tsd-kind-icon">Tag<wbr>Context<wbr>Menu</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#tools" class="tsd-kind-icon">Tools</a></li>
<li class="tsd-kind-enum-member tsd-parent-kind-enum"><a href="menuitemlocation.html#view" class="tsd-kind-icon">View</a></li>
</ul>
@@ -122,6 +124,22 @@
<aside class="tsd-sources">
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum">
<a name="foldercontextmenu" class="tsd-anchor"></a>
<h3>Folder<wbr>Context<wbr>Menu</h3>
<div class="tsd-signature tsd-kind-icon">Folder<wbr>Context<wbr>Menu<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = &quot;folderContextMenu&quot;</span></div>
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>When a command is called from a folder context menu, the
command will receive the following arguments:</p>
</div>
<ul>
<li><code>folderId:string</code>: ID of the folder that was right-clicked on</li>
</ul>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum">
<a name="help" class="tsd-anchor"></a>
<h3>Help</h3>
@@ -142,6 +160,31 @@
<div class="tsd-signature tsd-kind-icon">Note<wbr>List<wbr>Context<wbr>Menu<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = &quot;noteListContextMenu&quot;</span></div>
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>When a command is called from the note list context menu, the
command will receive the following arguments:</p>
</div>
<ul>
<li><code>noteIds:string[]</code>: IDs of the notes that were right-clicked on.</li>
</ul>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum">
<a name="tagcontextmenu" class="tsd-anchor"></a>
<h3>Tag<wbr>Context<wbr>Menu</h3>
<div class="tsd-signature tsd-kind-icon">Tag<wbr>Context<wbr>Menu<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = &quot;tagContextMenu&quot;</span></div>
<aside class="tsd-sources">
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>When a command is called from a tag context menu, the
command will receive the following arguments:</p>
</div>
<ul>
<li><code>tagId:string</code>: ID of the tag that was right-clicked on</li>
</ul>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-enum-member tsd-parent-kind-enum">
<a name="tools" class="tsd-anchor"></a>
@@ -188,6 +231,9 @@
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#file" class="tsd-kind-icon">File</a>
</li>
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#foldercontextmenu" class="tsd-kind-icon">Folder<wbr>Context<wbr>Menu</a>
</li>
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#help" class="tsd-kind-icon">Help</a>
</li>
@@ -197,6 +243,9 @@
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#notelistcontextmenu" class="tsd-kind-icon">Note<wbr>List<wbr>Context<wbr>Menu</a>
</li>
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#tagcontextmenu" class="tsd-kind-icon">Tag<wbr>Context<wbr>Menu</a>
</li>
<li class=" tsd-kind-enum-member tsd-parent-kind-enum">
<a href="menuitemlocation.html#tools" class="tsd-kind-icon">Tools</a>
</li>

View File

@@ -133,6 +133,12 @@
<li class="tsd-kind-variable"><a href="globals.html#logger" class="tsd-kind-icon">logger</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Functions</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-function"><a href="globals.html#iscontextmenuitemlocation" class="tsd-kind-icon">is<wbr>Context<wbr>Menu<wbr>Item<wbr>Location</a></li>
</ul>
</section>
</div>
</section>
</section>
@@ -187,9 +193,11 @@
<div class="lead">
<p>An array of at least one element and at most three elements.</p>
</div>
<p>[0]: Resource name (eg. &quot;notes&quot;, &quot;folders&quot;, &quot;tags&quot;, etc.)
[1]: (Optional) Resource ID.
[2]: (Optional) Resource link.</p>
<ul>
<li><strong>[0]</strong>: Resource name (eg. &quot;notes&quot;, &quot;folders&quot;, &quot;tags&quot;, etc.)</li>
<li><strong>[1]</strong>: (Optional) Resource ID.</li>
<li><strong>[2]</strong>: (Optional) Resource link.</li>
</ul>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-type-alias">
@@ -242,6 +250,33 @@
</aside>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Functions</h2>
<section class="tsd-panel tsd-member tsd-kind-function">
<a name="iscontextmenuitemlocation" class="tsd-anchor"></a>
<h3>is<wbr>Context<wbr>Menu<wbr>Item<wbr>Location</h3>
<ul class="tsd-signatures tsd-kind-function">
<li class="tsd-signature tsd-kind-icon">is<wbr>Context<wbr>Menu<wbr>Item<wbr>Location<span class="tsd-signature-symbol">(</span>location<span class="tsd-signature-symbol">: </span><a href="enums/menuitemlocation.html" class="tsd-signature-type">MenuItemLocation</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>location: <a href="enums/menuitemlocation.html" class="tsd-signature-type">MenuItemLocation</a></h5>
</li>
</ul>
<!-- JOPLINCHANGE
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4>
-->
</li>
</ul>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<!--
@@ -381,6 +416,9 @@
<li class=" tsd-kind-type-alias">
<a href="globals.html#viewhandle" class="tsd-kind-icon">ViewHandle</a>
</li>
<li class=" tsd-kind-function">
<a href="globals.html#iscontextmenuitemlocation" class="tsd-kind-icon">isContextMenuItemLocation</a>
</li>
</ul>
</nav>
</div>

View File

@@ -206,6 +206,9 @@
<li class=" tsd-kind-type-alias">
<a href="globals.html#viewhandle" class="tsd-kind-icon">ViewHandle</a>
</li>
<li class=" tsd-kind-function">
<a href="globals.html#iscontextmenuitemlocation" class="tsd-kind-icon">isContextMenuItemLocation</a>
</li>
</ul>
</nav>
</div>

View File

@@ -142,7 +142,7 @@
<td>&quot;oneNoteSelected &amp;&amp; !inConflictFolder&quot;</td>
</tr>
</tbody></table>
<p>Currently the supported context variables aren&#39;t documented, but you can <a href="https://github.com/laurent22/joplin/blob/dev/packages/app-mobile/lib/services/commands/stateToWhenClauseContext.ts">find the list here</a>.</p>
<p>Currently the supported context variables aren&#39;t documented, but you can <a href="https://github.com/laurent22/joplin/blob/dev/packages/lib/services/commands/stateToWhenClauseContext.ts">find the list here</a>.</p>
<p>Note: Commands are enabled by default unless you use this property.</p>
</div>
</section>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_loadin
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_loadin
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_loadin
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_manife
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_manife
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -405,6 +407,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_manife
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required?</th>
<th>Description</th>
</tr>
@@ -412,42 +415,55 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_manife
<tbody>
<tr>
<td><code>manifest_version</code></td>
<td>number</td>
<td><strong>Yes</strong></td>
<td>For now should always be &quot;1&quot;.</td>
</tr>
<tr>
<td><code>name</code></td>
<td>string</td>
<td><strong>Yes</strong></td>
<td>Name of the plugin. Should be a user-friendly string, as it will be displayed in the UI.</td>
</tr>
<tr>
<td><code>version</code></td>
<td>string</td>
<td><strong>Yes</strong></td>
<td>Version number such as &quot;1.0.0&quot;.</td>
</tr>
<tr>
<td><code>app_min_version</code></td>
<td>string</td>
<td><strong>Yes</strong></td>
<td>Minimum version of Joplin that the plugin is compatible with. In general it should be whatever version you are using to develop the plugin.</td>
</tr>
<tr>
<td><code>description</code></td>
<td>string</td>
<td>No</td>
<td>Detailed description of the plugin.</td>
</tr>
<tr>
<td><code>author</code></td>
<td>string</td>
<td>No</td>
<td>Plugin author name.</td>
</tr>
<tr>
<td><code>homepage_url</code></td>
<td>string</td>
<td>No</td>
<td>Homepage URL of the plugin. It can also be, for example, a link to a GitHub repository.</td>
</tr>
<tr>
<td><code>content_scripts</code></td>
<td>string[]</td>
<td>No</td>
<td>List of <a href="https://github.com/laurent22/joplin/blob/dev/packages/generator-joplin/README.md#content-scripts">content scripts</a> used by the plugin.</td>
</tr>
</tbody>
</table>
<p>Here's a complete example:</p>
<h2>Manifest example<a name="manifest-example" href="#manifest-example" class="heading-anchor">🔗</a></h2>
<pre><code class="language-json">{
&quot;manifest_version&quot;: 1,
&quot;name&quot;: &quot;Joplin Simple Plugin&quot;,
@@ -497,7 +513,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/plugin_manife
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/rest_api.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/references/rest_api.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -1070,7 +1072,7 @@ async function fetchAllNotes() {
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/tutorials/toc_plugin.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/api/tutorials/toc_plugin.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -712,7 +714,7 @@ document.addEventListener('click', event =&gt; {
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180621-182112.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180621-182112.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -445,7 +447,7 @@ published_at: 2018-06-21T17:21:12.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180906-111039.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180906-111039.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -446,7 +448,7 @@ published_at: 2018-09-06T10:10:39.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180916-210431.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180916-210431.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -445,7 +447,7 @@ published_at: 2018-09-16T20:04:31.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180929-121053.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20180929-121053.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -445,7 +447,7 @@ published_at: 2018-09-29T11:10:53.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181004-091123.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181004-091123.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ published_at: 2018-10-04T08:11:23.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181101-174335.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181101-174335.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -450,7 +452,7 @@ published_at: 2018-11-01T17:43:35.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181213-173459.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20181213-173459.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -448,7 +450,7 @@ published_at: 2018-12-13T17:34:59.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190130-230218.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190130-230218.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -448,7 +450,7 @@ published_at: 2019-01-30T23:02:18.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190404-074157.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190404-074157.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ published_at: 2019-04-04T06:41:57.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190424-112410.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190424-112410.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ published_at: 2019-04-24T10:24:10.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190523-231026.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190523-231026.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -457,7 +459,7 @@ published_at: 2019-05-23T22:10:26.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190611-000711.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190611-000711.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ published_at: 2019-06-10T23:07:11.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190613-202613.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190613-202613.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ published_at: 2019-06-13T19:26:13.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190814-225957.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190814-225957.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -456,7 +458,7 @@ published_at: 2019-08-14T21:59:57.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190925-000254.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190925-000254.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -461,7 +463,7 @@ published_at: 2019-09-24T23:02:54.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190929-152834.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20190929-152834.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -454,7 +456,7 @@ published_at: 2019-09-29T14:28:34.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191012-233121.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191012-233121.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -454,7 +456,7 @@ published_at: 2019-10-12T22:31:21.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191014-165136.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191014-165136.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -446,7 +448,7 @@ published_at: 2019-10-14T15:51:36.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191101-131852.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191101-131852.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -450,7 +452,7 @@ published_at: 2019-11-01T13:18:52.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191117-183855.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191117-183855.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -455,7 +457,7 @@ published_at: 2019-11-17T18:38:55.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191118-072700.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20191118-072700.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -453,7 +455,7 @@ published_at: 2019-11-18T07:27:00.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200220-190804.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200220-190804.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -445,7 +447,7 @@ published_at: 2020-02-20T19:08:04.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200301-125055.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200301-125055.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -461,7 +463,7 @@ published_at: 2020-03-01T12:50:55.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200314-001555.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200314-001555.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -455,7 +457,7 @@ published_at: 2020-03-14T00:15:55.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200406-224254.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/blog/20200406-224254.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -473,7 +475,7 @@ published_at: 2020-04-06T21:42:54.000+00:00</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/build_troubleshooting.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/build_troubleshooting.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -473,7 +475,7 @@ pod install
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -400,6 +402,46 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog.md
<div class="main">
<h1>Joplin changelog<a name="joplin-changelog" href="#joplin-changelog" class="heading-anchor">🔗</a></h1>
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.5.11">v1.5.11</a> - 2020-12-27T19:54:07Z<a name="v1-5-11-https-github-com-laurent22-joplin-releases-tag-v1-5-11-2020-12-27t19-54-07z" href="#v1-5-11-https-github-com-laurent22-joplin-releases-tag-v1-5-11-2020-12-27t19-54-07z" class="heading-anchor">🔗</a></h2>
<ul>
<li>New: Add support for media players (video, audio and PDF)</li>
<li>New: Add table captions when importing ENEX files</li>
<li>New: Added doc about Rich Text editor and added way to dismiss warning banner</li>
<li>New: MacOS: Notarize application</li>
<li>New: Plugins: Add support for content script asset files, for Markdown-it plugins</li>
<li>New: Plugins: Add support for context menu items on notebooks and tags</li>
<li>New: Plugins: Add support for workspace.onSyncStart event</li>
<li>New: Plugins: Added a way to execute commands from Markdown-it content scripts</li>
<li>Fixed: Fix End key behavior with Codemirror spellcheck (<a href="https://github.com/laurent22/joplin/issues/4215">#4215</a> by Caleb John)</li>
<li>Fixed: Fixed basic search when executing a query in Chinese (<a href="https://github.com/laurent22/joplin/issues/4034">#4034</a> by Naveen M V)</li>
<li>Fixed: Fixed context menu when the UI is zoomed in or out (<a href="https://github.com/laurent22/joplin/issues/4201">#4201</a>)</li>
<li>Fixed: Fixed importing certain code blocks from ENEX</li>
<li>Fixed: Fixed importing ENEX files that contain empty resources</li>
<li>Fixed: Fixed importing ENEX files that contain resources with invalid mime type</li>
<li>Fixed: Fixed issue when searching for text that contains diacritic (<a href="https://github.com/laurent22/joplin/issues/4152">#4152</a>) (<a href="https://github.com/laurent22/joplin/issues/4025">#4025</a> by Roman Musin)</li>
<li>Fixed: Fixed issue with attachment paths being invalid when user has spaces in home directory path.</li>
<li>Fixed: Fixed issue with note not being saved when a column is added or remove from Rich Text editor</li>
<li>Fixed: Fixed issues when importing hidden tables within hidden sections in Enex files</li>
<li>Fixed: Fixed numbered list bug in markdown editor (<a href="https://github.com/laurent22/joplin/issues/4116">#4116</a>) (<a href="https://github.com/laurent22/joplin/issues/3917">#3917</a> by <a href="https://github.com/MichBoi">@MichBoi</a>)</li>
<li>Fixed: Fixed potential crash when watching note files or resources</li>
<li>Fixed: Fixed title input field width on small windows</li>
<li>Fixed: Focus editor after pressing toolbar buttons (<a href="https://github.com/laurent22/joplin/issues/4037">#4037</a>) (<a href="https://github.com/laurent22/joplin/issues/4036">#4036</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
<li>Fixed: Plugins: Fixed disabling plugin files that start with &quot;_&quot;</li>
<li>Fixed: Prevent double paste when using Shift+Ctrl+V (<a href="https://github.com/laurent22/joplin/issues/4243">#4243</a>)</li>
<li>Fixed: Prevents crash when invalid spell checker language is selected, and provide fallback for invalid language codes (<a href="https://github.com/laurent22/joplin/issues/4146">#4146</a>)</li>
<li>Fixed: Register Markdown editor commands with the Keyboard Shortcut editor (<a href="https://github.com/laurent22/joplin/issues/4136">#4136</a>) (<a href="https://github.com/laurent22/joplin/issues/4130">#4130</a> by Caleb John)</li>
<li>Improved: Display Katex parsing errors</li>
<li>Improved: Improved warning banner colors</li>
<li>Improved: Plugins: Commands would not show up in keymap editor when no shortcut was associated with them</li>
<li>Improved: Plugins: Improved note change event handling.</li>
<li>Improved: Removed warning for Markdown editor spell checking</li>
<li>Improved: Restrict auto-detection of links, and added option to toggle linkify (<a href="https://github.com/laurent22/joplin/issues/4205">#4205</a>)</li>
<li>Improved: Rich Text: Do not converts to markdown links URLs that would be linkified</li>
<li>Improved: Translation: Update zh_CN (<a href="https://github.com/laurent22/joplin/issues/4195">#4195</a> by Zhang YANG)</li>
<li>Improved: Update macOS icon for macOS Big Sur</li>
<li>Improved: Update Mermaid: 8.8.1 -&gt; 8.8.4 (<a href="https://github.com/laurent22/joplin/issues/4193">#4193</a> by Helmut K. C. Tessarek)</li>
<li>Improved: Use plugins whenever printing or exporting notes</li>
</ul>
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.4.19">v1.4.19</a> - 2020-12-01T11:11:16Z<a name="v1-4-19-https-github-com-laurent22-joplin-releases-tag-v1-4-19-2020-12-01t11-11-16z" href="#v1-4-19-https-github-com-laurent22-joplin-releases-tag-v1-4-19-2020-12-01t11-11-16z" class="heading-anchor">🔗</a></h2>
<ul>
<li>Improved: Disable soft-break by default in Markdown rendering</li>
@@ -1915,7 +1957,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog_cli.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog_cli.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -400,6 +402,22 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog_cli.md
<div class="main">
<h1>Joplin terminal app changelog<a name="joplin-terminal-app-changelog" href="#joplin-terminal-app-changelog" class="heading-anchor">🔗</a></h1>
<h2><a href="https://github.com/laurent22/joplin/releases/tag/cli-v1.5.1">cli-v1.5.1</a> - 2020-12-26T00:46:31Z<a name="cli-v1-5-1-https-github-com-laurent22-joplin-releases-tag-cli-v1-5-1-2020-12-26t00-46-31z" href="#cli-v1-5-1-https-github-com-laurent22-joplin-releases-tag-cli-v1-5-1-2020-12-26t00-46-31z" class="heading-anchor">🔗</a></h2>
<ul>
<li>New: Add table captions when importing ENEX files</li>
<li>Improved: Allow exporting conflict notes (#4095)</li>
<li>Improved: Allow lowercase filters when doing search</li>
<li>Improved: Improved error handling when importing ENEX files</li>
<li>Improved: Partially reverts #3975 (link rendering)</li>
<li>Fixed: Fix sorting by title in a case insensitive way</li>
<li>Fixed: Fixed basic search when executing a query in Chinese (#4034 by Naveen M V)</li>
<li>Fixed: Fixed importing ENEX files that contain empty resources</li>
<li>Fixed: Fixed importing ENEX files that contain resources with invalid mime type</li>
<li>Fixed: Fixed importing certain ENEX files that contain invalid dates</li>
<li>Fixed: Fixed importing certain code blocks from ENEX</li>
<li>Fixed: Fixed issue when searching for text that contains diacritic (#4152) (#4025 by Roman Musin)</li>
<li>Fixed: Fixed issues when importing hidden tables within hidden sections in Enex files</li>
</ul>
<h2><a href="https://github.com/laurent22/joplin/releases/tag/cli-v1.4.9">cli-v1.4.9</a> - 2020-11-26T15:00:37Z<a name="cli-v1-4-9-https-github-com-laurent22-joplin-releases-tag-cli-v1-4-9-2020-11-26t15-00-37z" href="#cli-v1-4-9-https-github-com-laurent22-joplin-releases-tag-cli-v1-4-9-2020-11-26t15-00-37z" class="heading-anchor">🔗</a></h2>
<ul>
<li>Improved: Allow exporting conflict notes (#4095)</li>
@@ -671,7 +689,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/changelog_cli.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/clipper.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/clipper.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -471,7 +473,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/clipper.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/conflict.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/conflict.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -447,7 +449,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/conflict.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/debugging.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/debugging.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -493,7 +495,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/debugging.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/desktop.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/desktop.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -441,7 +443,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/desktop.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/donate.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/donate.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -474,7 +476,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/donate.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/e2ee.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/e2ee.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -459,7 +461,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/e2ee.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/faq.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/faq.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -411,6 +413,9 @@ https://github.com/laurent22/joplin/blob/dev/readme/faq.md
</ul>
<p>Now try to install again and it should work.</p>
<p>More info there: <a href="https://github.com/electron-userland/electron-builder/issues/4057">https://github.com/electron-userland/electron-builder/issues/4057</a></p>
<h2>How can I pass arguments to the Linux installation script?<a name="how-can-i-pass-arguments-to-the-linux-installation-script" href="#how-can-i-pass-arguments-to-the-linux-installation-script" class="heading-anchor">🔗</a></h2>
<p>You can pass <a href="https://github.com/laurent22/joplin/blob/dev/Joplin_install_and_update.sh#L37">arguments</a> to the installation script by using this command.</p>
<pre><code style="word-break: break-all">wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bash -s -- --argument1 --argument2</code></pre>
<h2>How can I edit my note in an external text editor?<a name="how-can-i-edit-my-note-in-an-external-text-editor" href="#how-can-i-edit-my-note-in-an-external-text-editor" class="heading-anchor">🔗</a></h2>
<p>The editor command (may include arguments) defines which editor will be used to open a note. If none is provided it will try to auto-detect the default editor. If this does nothing or you want to change it for Joplin, you need to configure it in the Preferences -&gt; Text editor command.</p>
<p>Some example configurations are: (comments after #)</p>
@@ -523,7 +528,7 @@ on this server.&lt;/p&gt;
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsoc2020/ideas.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsoc2020/ideas.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -544,7 +546,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsoc2020/ideas.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsoc2020/index.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsoc2020/index.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -543,7 +545,7 @@ There could be exceptional reason to accept proposal what cannot be finished ove
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsod2020/ideas.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsod2020/ideas.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -469,7 +471,7 @@ Task is to find a toolset to structure them and make the knowledge buried in the
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsod2020/index.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/gsod2020/index.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -529,7 +531,7 @@ The procedure reflects some of the lessons learnt in the GSOC 2020 campaign, so
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/README.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/README.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -414,27 +416,26 @@ https://github.com/laurent22/joplin/blob/dev/README.md
<tr>
<th>Operating System</th>
<th>Download</th>
<th>Alternative</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows (32 and 64-bit)</td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-Setup-1.4.19.exe'><img alt='Get it on Windows' width="134px" src='https://joplinapp.org/images/BadgeWindows.png'/></a></td>
<td>Or get the <a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/JoplinPortable.exe'>Portable version</a><br><br>The <a href="https://en.wikipedia.org/wiki/Portable_application">portable application</a> allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called &quot;JoplinProfile&quot; next to the executable file.</td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-Setup-1.5.11.exe'><img alt='Get it on Windows' width="134px" src='https://joplinapp.org/images/BadgeWindows.png'/></a></td>
</tr>
<tr>
<td>macOS</td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-1.4.19.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a></td>
<td>-</td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-1.5.11.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a></td>
</tr>
<tr>
<td>Linux</td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.4.19/Joplin-1.4.19.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a></td>
<td>The recommended way is to use the following installation script as it will handle the desktop icon too:<br><br> <code>wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bash</code></td>
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/Joplin-1.5.11.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a></td>
</tr>
</tbody>
</table>
<p><strong>On Windows</strong>, you may also use the <a href='https://github.com/laurent22/joplin/releases/download/v1.5.11/JoplinPortable.exe'>Portable version</a>. The <a href="https://en.wikipedia.org/wiki/Portable_application">portable application</a> allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called &quot;JoplinProfile&quot; next to the executable file.</p>
<p><strong>On Linux</strong>, the recommended way is to use the following installation script as it will handle the desktop icon too:</p>
<pre><code style="word-break: break-all">wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bash</code></pre>
<h2>Mobile applications<a name="mobile-applications" href="#mobile-applications" class="heading-anchor">🔗</a></h2>
<table>
<thead>
@@ -927,35 +928,35 @@ Eg. <code>:search -- &quot;-tag:tag1&quot;</code>.</p>
<td>Arabic</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ar.po">ar</a></td>
<td><a href="mailto:fi_ahmed_bacha@esi.dz">أحمد باشا إبراهيم</a></td>
<td>77%</td>
<td>75%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/es/basque_country.png" alt=""></td>
<td>Basque</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eu.po">eu</a></td>
<td>juan.abasolo@ehu.eus</td>
<td>33%</td>
<td>32%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/ba.png" alt=""></td>
<td>Bosnian (Bosna i Hercegovina)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bs_BA.po">bs_BA</a></td>
<td><a href="mailto:dervis.t@pm.me">Derviš T.</a></td>
<td>79%</td>
<td>77%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/bg.png" alt=""></td>
<td>Bulgarian (България)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/bg_BG.po">bg_BG</a></td>
<td></td>
<td>64%</td>
<td>62%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/es/catalonia.png" alt=""></td>
<td>Catalan</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ca.po">ca</a></td>
<td>jmontane, 2019</td>
<td>92%</td>
<td>89%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/hr.png" alt=""></td>
@@ -969,28 +970,28 @@ Eg. <code>:search -- &quot;-tag:tag1&quot;</code>.</p>
<td>Czech (Česká republika)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/cs_CZ.po">cs_CZ</a></td>
<td><a href="mailto:lukas@aiya.cz">Lukas Helebrandt</a></td>
<td>96%</td>
<td>93%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/dk.png" alt=""></td>
<td>Dansk (Danmark)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/da_DK.po">da_DK</a></td>
<td>Mustafa Al-Dailemi (<a href="mailto:dailemi@hotmail.com">dailemi@hotmail.com</a>)Language-Team:</td>
<td>79%</td>
<td>77%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/de.png" alt=""></td>
<td>Deutsch (Deutschland)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/de_DE.po">de_DE</a></td>
<td><a href="mailto:atalanttore@users.noreply.github.com">Ettore Atalan</a></td>
<td>96%</td>
<td>95%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/ee.png" alt=""></td>
<td>Eesti Keel (Eesti)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/et_EE.po">et_EE</a></td>
<td></td>
<td>63%</td>
<td>61%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/gb.png" alt=""></td>
@@ -1011,189 +1012,189 @@ Eg. <code>:search -- &quot;-tag:tag1&quot;</code>.</p>
<td>Español (España)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/es_ES.po">es_ES</a></td>
<td><a href="mailto:mario.campo@gmail.com">Mario Campo</a></td>
<td>96%</td>
<td>99%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/esperanto.png" alt=""></td>
<td>Esperanto</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/eo.po">eo</a></td>
<td>Marton Paulo</td>
<td>36%</td>
<td>35%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/fi.png" alt=""></td>
<td>Finnish (Suomi)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fi_FI.po">fi_FI</a></td>
<td></td>
<td>97%</td>
<td>94%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/fr.png" alt=""></td>
<td>Français (France)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fr_FR.po">fr_FR</a></td>
<td>Laurent Cozic</td>
<td>96%</td>
<td>99%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/es/galicia.png" alt=""></td>
<td>Galician (España)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/gl_ES.po">gl_ES</a></td>
<td><a href="mailto:marcoslansgarza@gmail.com">Marcos Lans</a></td>
<td>42%</td>
<td>40%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/id.png" alt=""></td>
<td>Indonesian (Indonesia)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/id_ID.po">id_ID</a></td>
<td><a href="mailto:16875937+fathyar@users.noreply.github.com">Fathy AR</a></td>
<td>88%</td>
<td>85%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/it.png" alt=""></td>
<td>Italiano (Italia)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/it_IT.po">it_IT</a></td>
<td><a href="mailto:mailfilledwithspam@gmail.com">Alessandro Bernardello</a></td>
<td>97%</td>
<td>96%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/be.png" alt=""></td>
<td>Nederlands (België, Belgique, Belgien)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_BE.po">nl_BE</a></td>
<td></td>
<td>33%</td>
<td>32%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/nl.png" alt=""></td>
<td>Nederlands (Nederland)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nl_NL.po">nl_NL</a></td>
<td><a href="mailto:metbril@users.noreply.github.com">MetBril</a></td>
<td>96%</td>
<td>93%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/no.png" alt=""></td>
<td>Norwegian (Norge, Noreg)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/nb_NO.po">nb_NO</a></td>
<td><a href="mailto:code@mxe.no">Mats Estensen</a></td>
<td>85%</td>
<td>82%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/ir.png" alt=""></td>
<td>Persian</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/fa.po">fa</a></td>
<td><a href="mailto:kourox@protonmail.com">Kourosh Firoozbakht</a></td>
<td>79%</td>
<td>77%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/pl.png" alt=""></td>
<td>Polski (Polska)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pl_PL.po">pl_PL</a></td>
<td></td>
<td>95%</td>
<td>92%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/br.png" alt=""></td>
<td>Português (Brasil)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_BR.po">pt_BR</a></td>
<td><a href="mailto:rnbastos@gmail.com">Renato Nunes Bastos</a></td>
<td>93%</td>
<td>91%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/pt.png" alt=""></td>
<td>Português (Portugal)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/pt_PT.po">pt_PT</a></td>
<td><a href="mailto:jduar@protonmail.com">João Duarte</a></td>
<td>95%</td>
<td>92%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/ro.png" alt=""></td>
<td>Română</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ro.po">ro</a></td>
<td><a href="mailto:cristi.duluta@gmail.com">Cristi Duluta</a></td>
<td>74%</td>
<td>72%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/si.png" alt=""></td>
<td>Slovenian (Slovenija)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sl_SI.po">sl_SI</a></td>
<td></td>
<td>41%</td>
<td>40%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/se.png" alt=""></td>
<td>Svenska</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sv.po">sv</a></td>
<td><a href="mailto:jonatan@autistici.org">Jonatan Nyberg</a></td>
<td>68%</td>
<td>66%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/th.png" alt=""></td>
<td>Thai (ประเทศไทย)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/th_TH.po">th_TH</a></td>
<td></td>
<td>50%</td>
<td>49%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/vi.png" alt=""></td>
<td>Tiếng Việt</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/vi.po">vi</a></td>
<td></td>
<td>82%</td>
<td>79%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/tr.png" alt=""></td>
<td>Türkçe (Türkiye)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/tr_TR.po">tr_TR</a></td>
<td><a href="mailto:arda@kilicdagi.com">Arda Kılıçdağı</a></td>
<td>94%</td>
<td>99%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/gr.png" alt=""></td>
<td>Ελληνικά (Ελλάδα)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/el_GR.po">el_GR</a></td>
<td><a href="mailto:xaris@tuta.io">Harris Arvanitis</a></td>
<td>92%</td>
<td>89%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/ru.png" alt=""></td>
<td>Русский (Россия)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ru_RU.po">ru_RU</a></td>
<td><a href="mailto:thesermanarm@gmail.com">Sergey Segeda</a></td>
<td>92%</td>
<td>96%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/rs.png" alt=""></td>
<td>српски језик (Србија)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/sr_RS.po">sr_RS</a></td>
<td></td>
<td>69%</td>
<td>67%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/cn.png" alt=""></td>
<td>中文 (简体)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_CN.po">zh_CN</a></td>
<td><a href="mailto:fungdaat31@outlook.com">WhiredPlanck</a></td>
<td>97%</td>
<td>99%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/tw.png" alt=""></td>
<td>中文 (繁體)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/zh_TW.po">zh_TW</a></td>
<td><a href="mailto:yaozeye@yahoo.co.jp">Yaoze Ye</a></td>
<td>91%</td>
<td>95%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/jp.png" alt=""></td>
<td>日本語 (日本)</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ja_JP.po">ja_JP</a></td>
<td><a href="mailto:genneko217@gmail.com">genneko</a></td>
<td>97%</td>
<td>96%</td>
</tr>
<tr>
<td><img src="https://joplinapp.org/images/flags/country-4x3/kr.png" alt=""></td>
<td>한국어</td>
<td><a href="https://github.com/laurent22/joplin/blob/dev/packages/tools/locales/ko.po">ko</a></td>
<td><a href="mailto:potatogim@potatogim.net">Ji-Hyeon Gim</a></td>
<td>97%</td>
<td>96%</td>
</tr>
</tbody>
</table>
@@ -1587,7 +1588,7 @@ Eg. <code>:search -- &quot;-tag:tag1&quot;</code>.</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/markdown.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/markdown.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -764,7 +766,7 @@ graph TD;
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/mobile.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/mobile.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -440,7 +442,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/mobile.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/nextcloud_app.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/nextcloud_app.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -400,6 +402,10 @@ https://github.com/laurent22/joplin/blob/dev/readme/nextcloud_app.md
<div class="main">
<h1>Joplin Web API for Nextcloud<a name="joplin-web-api-for-nextcloud" href="#joplin-web-api-for-nextcloud" class="heading-anchor">🔗</a></h1>
<hr>
<p><strong>IMPORTANT: THIS APPLICATION IS DEPRECATED AND WILL NO LONGER BE SUPPORTED FROM JOPLIN 1.6.x</strong></p>
<p>It is deprecated in favour of <a href="https://discourse.joplinapp.org/t/joplin-web-api-for-nextcloud/4491/72?u=laurent">Joplin Server</a>, so if you are relying on it please do not upgrade to Joplin 1.6.x till you are ready to migrate to Joplin Server or some other alternative.</p>
<hr>
<p><strong>This is a beta feature, not yet completed. More info coming soon!</strong></p>
<p>The app can be downloaded from there: <a href="https://apps.nextcloud.com/apps/joplin">https://apps.nextcloud.com/apps/joplin</a></p>
<p>The Joplin Web API for Nextcloud is a helper application that enables certain features that are not possible otherwise. In particular:</p>
@@ -475,7 +481,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/nextcloud_app.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/plugins.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/plugins.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -442,7 +444,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/plugins.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/prereleases.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/prereleases.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -443,7 +445,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/prereleases.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/privacy.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/privacy.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -442,7 +444,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/privacy.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/rich_text_editor.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/rich_text_editor.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -414,6 +416,9 @@ https://github.com/laurent22/joplin/blob/dev/readme/rich_text_editor.md
<li>
<p>Tables must have a header, because this is a requirement in Markdown. When you create a table, it will let you create it without a header, but under the hood it will add an empty one. And next time you open the note, this empty header will be present.</p>
</li>
<li>
<p>All items in a list must be of the same type, so for example all checkboxes, or all bullet points. If you require two different types, you should create two different lists separated by an horizontal rule or similar.</p>
</li>
</ul>
<p>Those are the known limitations but if you notice any other issue not listed here, please let us know <a href="https://discourse.joplinapp.org/">in the forum</a>.</p>
@@ -455,7 +460,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/rich_text_editor.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/e2ee.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/e2ee.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -534,7 +536,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/e2ee.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/history.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/history.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -466,7 +468,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/history.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/plugins.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/plugins.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -504,7 +506,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/plugins.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/search_sorting.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/search_sorting.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -461,7 +463,7 @@ This time-based weight decays logarithmically, becoming less of a factor than BM
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -0,0 +1,523 @@
<!doctype html>
<html>
<!--
!!! WARNING !!!
This file was auto-generated from readme/spec/server_delta_sync.md and any manual change
made to it will be overwritten. To make a change to this file please modify
the source Markdown file:
https://github.com/laurent22/joplin/blob/dev/readme/spec/server_delta_sync.md
-->
<head>
<title>Joplin Server delta sync | Joplin</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://joplinapp.org/css/bootstrap.min.css">
<link rel="shortcut icon" type="image/x-icon" href="https://joplinapp.org/favicon.ico">
<!-- <link rel="stylesheet" href="https://joplinapp.org/css/fontawesome-all.min.css"> -->
<link rel="stylesheet" href="https://joplinapp.org/css/fork-awesome.min.css">
<script src="https://joplinapp.org/js/jquery-3.2.1.slim.min.js"></script>
<style>
body {
background-color: #F1F1F1;
color: #333333;
}
.root {
overflow: hidden;
}
a[href^="mailto:"] {
word-break: break-all;
}
table {
margin-bottom: 1em;
}
td, th {
padding: .8em;
border: 1px solid #ccc;
}
.page-markdown table pre,
.page-markdown table blockquote {
margin-bottom: 0;
}
.page-markdown table pre,
.page-markdown table blockquote {
margin-bottom: 0;
}
.page-markdown table pre {
background-color: rgba(0,0,0,0);
border: none;
margin: 0;
padding: 0;
}
h1, h2 {
border-bottom: 1px solid #eaecef;
padding-bottom: 0.3em;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-weight: 600;
font-size: 2em;
margin-bottom: 16px;
}
h2 {
font-size: 1.6em;
}
h3 {
font-size: 1.3em;
}
code {
color: black;
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
/* word-break: break-all; */
}
pre code {
border: none;
}
pre {
font-size: .85em;
}
blockquote {
font-size: 1em;
color: #555;
};
#toc ul {
margin-bottom: 10px;
}
#toc > ul > li {
margin-bottom: 10px;
}
#toc {
padding-bottom: 1em;
}
.title {
display: flex;
align-items: center;
}
.title-icon {
display: flex;
height: 1em;
}
.title-text {
display: flex;
font-weight: normal;
margin-bottom: .2em;
margin-left: .5em;
}
.sub-title {
font-weight: normal;
}
.container {
background-color: white;
padding: 0;
box-shadow: 0 10px 20px #888888;
}
table.screenshots {
margin-top: 2em;
margin-bottom: 2em;
}
table.screenshots th {
height: 3em;
text-align: center;
}
table.screenshots th,
table.screenshots td {
border: 1px solid #C2C2C2;
}
img[align="left"] {
margin-right: 10px;
margin-bottom: 10px;
}
.mobile-screenshot {
height: 40em;
padding: 1em;
}
.cli-screenshot-wrapper {
background-color: black;
vertical-align: top;
padding: 1em 2em 1em 1em;
}
.cli-screenshot {
font-family: "Monaco", "Inconsolata", "CONSOLAS", "Deja Vu Sans Mono", "Droid Sans Mono", "Andale Mono", monospace;
background-color: black;
color: white;
border: none;
}
.cli-screenshot .prompt {
color: #48C2F0;
}
.top-screenshot {
margin-top: 2em;
text-align: center;
}
.header {
position: relative;
padding-left: 2em;
padding-right: 2em;
padding-top: 1em;
padding-bottom: 1em;
color: white;
background-color: #2B2B3D;
}
.header a h1 {
color: white;
}
.header a:hover {
text-decoration: none;
}
.content {
padding-left: 2em;
padding-right: 2em;
padding-bottom: 2em;
padding-top: 2em;
}
.forkme {
position: absolute;
right: 0;
top:0;
}
.nav-wrapper {
position: relative;
width: inherit;
}
.nav {
background-color: black;
display: flex;
flex-direction: row;
align-items: center;
}
.nav.sticky {
position:fixed;
top: 0;
width: inherit;
box-shadow: 0 0 10px #000000;
}
.nav a {
color: white;
display: inline-block;
padding: .6em .9em .6em .9em;
}
.nav ul {
padding-left: 2em;
margin-bottom: 0;
display: table-cell;
display: flex;
width: 100%;
}
.nav ul li {
display: inline-block;
padding: 0;
}
.nav li.selected {
background-color: #222;
font-weight: bold;
}
.nav-right {
display: flex;
text-align: right;
vertical-align: middle;
line-height: 0;
margin-right: 10px;
}
.nav-right .share-btn {
display: none;
}
.nav-right .small-share-btn {
display: none;
}
.footer {
padding: 2em;
border-top: 1px solid #d4d4d4;
margin-top: 2em;
color: gray;
font-size: .9em;
}
a.heading-anchor {
display: inline-block;
opacity: 0;
width: 1.3em;
font-size: 0.7em;
margin-left: 0.4em;
line-height: 1em;
text-decoration: none;
transition: opacity 0.3s;
}
a.heading-anchor:hover,
h1:hover a.heading-anchor,
h2:hover a.heading-anchor,
h3:hover a.heading-anchor,
h4:hover a.heading-anchor,
h5:hover a.heading-anchor,
h6:hover a.heading-anchor {
opacity: 1;
}
@media (min-width: 992px) {
.content{
display: flex;
}
#toc{
display: block!important;
align-self: flex-start;
width: 300px;
position: sticky; top: 20px; left: 0;
}
.main{
width: calc(100% - 300px);
}
}
.bottom-links {
display: flex;
justify-content: center;
border-top: 1px solid #d4d4d4;
margin-top: 30px;
padding-top: 25px;
}
@media all and (min-width: 400px) {
.nav-right .share-btn {
display: inline-block;
}
.nav-right .small-share-btn {
display: none;
}
}
</style>
</head>
<body>
<div class="container root page-server_delta_sync">
<div class="header">
<a class="forkme" href="https://github.com/laurent22/joplin"><img src="https://joplinapp.org/images/ForkMe.png"/></a>
<a href="https://joplinapp.org"><h1 class="title"><img class="title-icon" src="https://joplinapp.org/images/Icon512.png"><span class="title-text">Joplin</span></h1></a>
<p class="sub-title">An open source note taking and to-do application with synchronisation capabilities</p>
</div>
<div class="nav-wrapper">
<div class="nav">
<ul>
<li class=""><a href="https:&#x2F;&#x2F;joplinapp.org/" title="Home"><i class="fa fa-home"></i></a></li>
<li><a href="https://discourse.joplinapp.org" title="Forum">Forum</a></li>
<li><a class="help" href="#" title="Menu">Menu</a></li>
<!-- <li><a class="gsod" href="https://joplinapp.org/gsod2020/" title="Google Season of Docs 2020">GSoD 2020</a></li> -->
</ul>
<div class="nav-right">
<!--
<iframe class="share-btn" src="https://www.facebook.com/plugins/share_button.php?href=http%3A%2F%2Fjoplinapp.org&layout=button&size=small&mobile_iframe=true&width=60&height=20&appId" width="60" height="20" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true"></iframe>
<iframe class="share-btn" src="https://platform.twitter.com/widgets/tweet_button.html?url=http%3A%2F%2Fjoplinapp.org" width="62" height="20" title="Tweet" style="border: 0; overflow: hidden;"></iframe>
-->
<iframe class="share-btn share-btn-github" src="https://ghbtns.com/github-btn.html?user=laurent22&repo=joplin&type=star&count=true" frameborder="0" scrolling="0" width="100px" height="20px"></iframe>
</div>
</div>
</div>
<div class="content">
<div id="toc"><ul>
<li>
<p>Applications</p>
<ul>
<li><a href="https://joplinapp.org/desktop/">Desktop application</a></li>
<li><a href="https://joplinapp.org/mobile/">Mobile applications</a></li>
<li><a href="https://joplinapp.org/terminal/">Terminal application</a></li>
<li><a href="https://joplinapp.org/clipper/">Web Clipper</a></li>
</ul>
</li>
<li>
<p>Support</p>
<ul>
<li><a href="https://discourse.joplinapp.org">Joplin Forum</a></li>
<li><a href="https://joplinapp.org/markdown/">Markdown Guide</a></li>
<li><a href="https://joplinapp.org/e2ee/">How to enable end-to-end encryption</a></li>
<li><a href="https://joplinapp.org/conflict/">What is a conflict?</a></li>
<li><a href="https://joplinapp.org/debugging/">How to enable debug mode</a></li>
<li><a href="https://joplinapp.org/rich_text_editor/">About the Rich Text editor limitations</a></li>
<li><a href="https://joplinapp.org/faq/">FAQ</a></li>
</ul>
</li>
<li>
<p>Joplin API - Get Started</p>
<ul>
<li><a href="https://joplinapp.org/api/overview/">Joplin API Overview</a></li>
<li><a href="https://joplinapp.org/api/get_started/plugins/">Plugin development</a></li>
<li><a href="https://joplinapp.org/api/tutorials/toc_plugin/">Plugin tutorial</a></li>
</ul>
</li>
<li>
<p>Joplin API - References</p>
<ul>
<li><a href="https://joplinapp.org/api/references/plugin_api/classes/joplin.html">Plugin API</a></li>
<li><a href="https://joplinapp.org/api/references/rest_api/">Data API</a></li>
<li><a href="https://joplinapp.org/api/references/plugin_manifest/">Plugin manifest</a></li>
<li><a href="https://joplinapp.org/api/references/plugin_loading_rules/">Plugin loading rules</a></li>
</ul>
</li>
<li>
<p>Development</p>
<ul>
<li><a href="https://github.com/laurent22/joplin/blob/dev/BUILD.md">How to build the apps</a></li>
<li><a href="https://joplinapp.org/spec/e2ee/">End-to-end encryption spec</a></li>
<li><a href="https://joplinapp.org/spec/history/">Note History spec</a></li>
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
<p>Google Summer of Code 2020</p>
<ul>
<li><a href="https://joplinapp.org/gsoc2020/index/">Google Summer of Code 2020</a></li>
<li><a href="https://joplinapp.org/gsoc2020/ideas/">Project Ideas</a></li>
</ul>
</li>
<li>
<p>About</p>
<ul>
<li><a href="https://joplinapp.org/changelog/">Changelog (Desktop App)</a></li>
<li><a href="https://joplinapp.org/changelog_cli/">Changelog (CLI App)</a></li>
<li><a href="https://joplinapp.org/stats/">Stats</a></li>
<li><a href="https://joplinapp.org/donate/">Donate</a></li>
</ul>
</li>
</ul>
</div>
<div class="main">
<h1>Joplin Server delta sync<a name="joplin-server-delta-sync" href="#joplin-server-delta-sync" class="heading-anchor">🔗</a></h1>
<p>This documentation is meant to provide a high level overview of delta sync API. Exact technical details might change over time and would be documented separately in an API doc.</p>
<p>Delta sync provides an API end point that gives a list of the latest change events since a particular point. At a high level, it works like so:</p>
<ul>
<li>
<p>User calls <code>/api/files/delta</code> and get a list of the latest changes on the sync target. They also get a <code>cursor</code> object that can be used to check for the latest changes at a later time. A <code>cursor</code> essentially represents a point in time.</p>
</li>
<li>
<p>Later on, they call <code>/api/file/delta?cursor=CURSOR</code>, with the cursor they previously got, and they will get the latest events since that cursor. They will also get a new cursor, which they would use again to get the following events, and so on.</p>
</li>
</ul>
<p>The events are tied to a particular parent ID - in other words it's only possible to list the changes associated with a particular directory (non-recursive). For now, this is sufficient for the purpose of Joplin synchronisation, but later on it might be possible to get the changes in a recursive way.</p>
<h2>What is a change event<a name="what-is-a-change-event" href="#what-is-a-change-event" class="heading-anchor">🔗</a></h2>
<p>An event can be &quot;create&quot;, &quot;update&quot; or &quot;detete&quot; and is associated with a given file. The client uses this info to apply the change locally - creating, updating or deleting the file as needed.</p>
<p>Attached to the event, is also a copy of the file metadata, so the client doesn't need to a do a second request to fetch it.</p>
<p>Internally, the event also stores the file name and parent ID. This is used when an item is deleted since in that case the item ID only would not be sufficient to know where the item was initally stored.</p>
<h2>Event compression<a name="event-compression" href="#event-compression" class="heading-anchor">🔗</a></h2>
<p>To reduce the data being transferred, the API compresses the events by removing redundant ones. For example, multiple updates are compressed into one, since the client only need to know that the item has been updated at least once. The following rules are currently applied to compress the events:</p>
<table>
<thead>
<tr>
<th>Event sequence</th>
<th>Result</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>update - update</td>
<td>update</td>
<td>If an item is updated twice or more, we only send one update event back</td>
</tr>
<tr>
<td>create - update</td>
<td>create</td>
<td>If an item has been created then modified, we only send one create event, with the latest version of the file</td>
</tr>
<tr>
<td>create - delete</td>
<td>NOOP</td>
<td>If an item has been created, then deleted, we don't send anything back. For the client, this file has never existed.</td>
</tr>
<tr>
<td>update - delete</td>
<td>delete</td>
<td>If an item is updated multiple times, then deleted, we only send a &quot;delete&quot; event back.</td>
</tr>
</tbody>
</table>
<p>Compression works at a page-level so depending on how many items are requested via the <code>limit</code> parameters, different compression will apply.</p>
<p>Due to this compression, the <code>limit</code> query parameter is only advisory. There's no guarantee that exactly <code>limit</code> items will be returned as some items might have been removed after compression. There's however a guarantee that no more than <code>limit</code> items will be returned.</p>
<h2>Delete event limitation<a name="delete-event-limitation" href="#delete-event-limitation" class="heading-anchor">🔗</a></h2>
<p>There's currently a known limitation regarding delete events. When looking at a particular event page, the server might find that a &quot;create&quot; or &quot;update&quot; event is associated with a non-existing file, which would have been deleted. In that case, the server will send back a &quot;delete&quot; event. When looking at following pages, the server will eventually process the actual &quot;delete&quot; event for that item - and send again a &quot;delete&quot; event for it.</p>
<p>This is a known issue and to solve it would require looking ahead in event pages, which would slow down the process. It means it's expected that a client might receive a &quot;delete&quot; event for a file, even though it has no such file or has already deleted it. In that case, the processing for that &quot;delete&quot; event should be a noop, not an error.</p>
<h2>ResyncRequired error<a name="resyncrequired-error" href="#resyncrequired-error" class="heading-anchor">🔗</a></h2>
<p>In some cases, in particular when a delta cursor has expired or is invalid, the server might throw an error with a &quot;resyncRequired&quot; error code. In that case, the client should discard their cursor and sync the complete data again from the beginning.</p>
<p>This error should be rare - currently it would only happen if the cursor is invalid. Later on, it will also happen when old events have been deleted after x months. So a client that has not synced in a long time might see this error. The error code could also be used to solve server-side errors in some rare cases.</p>
<p>When syncing from the start, there will be many &quot;create&quot; events for files that are already there locally. In that case, they should just be skipped.</p>
<h2>Regarding the deletion of old change events<a name="regarding-the-deletion-of-old-change-events" href="#regarding-the-deletion-of-old-change-events" class="heading-anchor">🔗</a></h2>
<p>Keeping all change events permanently would represent a lot of data, however it might be necessary. Without it, it won't be possible for a client to know what file has been deleted and thus a client that has not synced for a long time will keep its files permanently.</p>
<p>So most likely we'll always keep the change events. However, we could compress the old ones to just &quot;create&quot; and &quot;delete&quot; events. All &quot;update&quot; events are not needed. And for a file that has been deleted, we don't need to keep the &quot;create&quot; event.</p>
<p>The client would then follow this logic:</p>
<ul>
<li>For &quot;create&quot; events:
<ul>
<li>If the file is present locally, update it with the version from the server.</li>
<li>If the file is not present, create it using the version from the server.</li>
</ul>
</li>
<li>For &quot;delete&quot; events:
<ul>
<li>If the file is present, delete it.</li>
<li>If it is not, skip the event (not an error).</li>
</ul>
</li>
</ul>
<p>It might seem we could derive the &quot;create&quot; events simply by looking at the files in the directory - all files that are there would implicitely have a &quot;create&quot; event. The issue however is that it's not possible to reliably iterate over the files in a folder, because they might change in the meantime. The change events on the other hand provide an ID that can be used reliably to iterate over changes, and to resume at any time.</p>
<div class="bottom-links">
<a href="https://github.com/laurent22/joplin/blob/dev/readme/spec/server_delta_sync.md">
<i class="fa fa-github"></i> Improve this doc
</a>
</div>
<script>
function stickyHeader() {
return; // Disabled
if ($(window).scrollTop() > 179) {
$('.nav').addClass('sticky');
} else {
$('.nav').removeClass('sticky');
}
}
$('#toc').hide();
$('.help').click(function(event) {
event.preventDefault();
$('#toc').show();
});
$(window).scroll(function() {
stickyHeader();
});
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-103586105-1', 'auto');
ga('send', 'pageview');
</script>
</div></div>
<div class="footer">
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -0,0 +1,469 @@
<!doctype html>
<html>
<!--
!!! WARNING !!!
This file was auto-generated from readme/spec/server_file_url_format.md and any manual change
made to it will be overwritten. To make a change to this file please modify
the source Markdown file:
https://github.com/laurent22/joplin/blob/dev/readme/spec/server_file_url_format.md
-->
<head>
<title>Structure of file URLs in Joplin Server | Joplin</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://joplinapp.org/css/bootstrap.min.css">
<link rel="shortcut icon" type="image/x-icon" href="https://joplinapp.org/favicon.ico">
<!-- <link rel="stylesheet" href="https://joplinapp.org/css/fontawesome-all.min.css"> -->
<link rel="stylesheet" href="https://joplinapp.org/css/fork-awesome.min.css">
<script src="https://joplinapp.org/js/jquery-3.2.1.slim.min.js"></script>
<style>
body {
background-color: #F1F1F1;
color: #333333;
}
.root {
overflow: hidden;
}
a[href^="mailto:"] {
word-break: break-all;
}
table {
margin-bottom: 1em;
}
td, th {
padding: .8em;
border: 1px solid #ccc;
}
.page-markdown table pre,
.page-markdown table blockquote {
margin-bottom: 0;
}
.page-markdown table pre,
.page-markdown table blockquote {
margin-bottom: 0;
}
.page-markdown table pre {
background-color: rgba(0,0,0,0);
border: none;
margin: 0;
padding: 0;
}
h1, h2 {
border-bottom: 1px solid #eaecef;
padding-bottom: 0.3em;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-weight: 600;
font-size: 2em;
margin-bottom: 16px;
}
h2 {
font-size: 1.6em;
}
h3 {
font-size: 1.3em;
}
code {
color: black;
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
/* word-break: break-all; */
}
pre code {
border: none;
}
pre {
font-size: .85em;
}
blockquote {
font-size: 1em;
color: #555;
};
#toc ul {
margin-bottom: 10px;
}
#toc > ul > li {
margin-bottom: 10px;
}
#toc {
padding-bottom: 1em;
}
.title {
display: flex;
align-items: center;
}
.title-icon {
display: flex;
height: 1em;
}
.title-text {
display: flex;
font-weight: normal;
margin-bottom: .2em;
margin-left: .5em;
}
.sub-title {
font-weight: normal;
}
.container {
background-color: white;
padding: 0;
box-shadow: 0 10px 20px #888888;
}
table.screenshots {
margin-top: 2em;
margin-bottom: 2em;
}
table.screenshots th {
height: 3em;
text-align: center;
}
table.screenshots th,
table.screenshots td {
border: 1px solid #C2C2C2;
}
img[align="left"] {
margin-right: 10px;
margin-bottom: 10px;
}
.mobile-screenshot {
height: 40em;
padding: 1em;
}
.cli-screenshot-wrapper {
background-color: black;
vertical-align: top;
padding: 1em 2em 1em 1em;
}
.cli-screenshot {
font-family: "Monaco", "Inconsolata", "CONSOLAS", "Deja Vu Sans Mono", "Droid Sans Mono", "Andale Mono", monospace;
background-color: black;
color: white;
border: none;
}
.cli-screenshot .prompt {
color: #48C2F0;
}
.top-screenshot {
margin-top: 2em;
text-align: center;
}
.header {
position: relative;
padding-left: 2em;
padding-right: 2em;
padding-top: 1em;
padding-bottom: 1em;
color: white;
background-color: #2B2B3D;
}
.header a h1 {
color: white;
}
.header a:hover {
text-decoration: none;
}
.content {
padding-left: 2em;
padding-right: 2em;
padding-bottom: 2em;
padding-top: 2em;
}
.forkme {
position: absolute;
right: 0;
top:0;
}
.nav-wrapper {
position: relative;
width: inherit;
}
.nav {
background-color: black;
display: flex;
flex-direction: row;
align-items: center;
}
.nav.sticky {
position:fixed;
top: 0;
width: inherit;
box-shadow: 0 0 10px #000000;
}
.nav a {
color: white;
display: inline-block;
padding: .6em .9em .6em .9em;
}
.nav ul {
padding-left: 2em;
margin-bottom: 0;
display: table-cell;
display: flex;
width: 100%;
}
.nav ul li {
display: inline-block;
padding: 0;
}
.nav li.selected {
background-color: #222;
font-weight: bold;
}
.nav-right {
display: flex;
text-align: right;
vertical-align: middle;
line-height: 0;
margin-right: 10px;
}
.nav-right .share-btn {
display: none;
}
.nav-right .small-share-btn {
display: none;
}
.footer {
padding: 2em;
border-top: 1px solid #d4d4d4;
margin-top: 2em;
color: gray;
font-size: .9em;
}
a.heading-anchor {
display: inline-block;
opacity: 0;
width: 1.3em;
font-size: 0.7em;
margin-left: 0.4em;
line-height: 1em;
text-decoration: none;
transition: opacity 0.3s;
}
a.heading-anchor:hover,
h1:hover a.heading-anchor,
h2:hover a.heading-anchor,
h3:hover a.heading-anchor,
h4:hover a.heading-anchor,
h5:hover a.heading-anchor,
h6:hover a.heading-anchor {
opacity: 1;
}
@media (min-width: 992px) {
.content{
display: flex;
}
#toc{
display: block!important;
align-self: flex-start;
width: 300px;
position: sticky; top: 20px; left: 0;
}
.main{
width: calc(100% - 300px);
}
}
.bottom-links {
display: flex;
justify-content: center;
border-top: 1px solid #d4d4d4;
margin-top: 30px;
padding-top: 25px;
}
@media all and (min-width: 400px) {
.nav-right .share-btn {
display: inline-block;
}
.nav-right .small-share-btn {
display: none;
}
}
</style>
</head>
<body>
<div class="container root page-server_file_url_format">
<div class="header">
<a class="forkme" href="https://github.com/laurent22/joplin"><img src="https://joplinapp.org/images/ForkMe.png"/></a>
<a href="https://joplinapp.org"><h1 class="title"><img class="title-icon" src="https://joplinapp.org/images/Icon512.png"><span class="title-text">Joplin</span></h1></a>
<p class="sub-title">An open source note taking and to-do application with synchronisation capabilities</p>
</div>
<div class="nav-wrapper">
<div class="nav">
<ul>
<li class=""><a href="https:&#x2F;&#x2F;joplinapp.org/" title="Home"><i class="fa fa-home"></i></a></li>
<li><a href="https://discourse.joplinapp.org" title="Forum">Forum</a></li>
<li><a class="help" href="#" title="Menu">Menu</a></li>
<!-- <li><a class="gsod" href="https://joplinapp.org/gsod2020/" title="Google Season of Docs 2020">GSoD 2020</a></li> -->
</ul>
<div class="nav-right">
<!--
<iframe class="share-btn" src="https://www.facebook.com/plugins/share_button.php?href=http%3A%2F%2Fjoplinapp.org&layout=button&size=small&mobile_iframe=true&width=60&height=20&appId" width="60" height="20" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true"></iframe>
<iframe class="share-btn" src="https://platform.twitter.com/widgets/tweet_button.html?url=http%3A%2F%2Fjoplinapp.org" width="62" height="20" title="Tweet" style="border: 0; overflow: hidden;"></iframe>
-->
<iframe class="share-btn share-btn-github" src="https://ghbtns.com/github-btn.html?user=laurent22&repo=joplin&type=star&count=true" frameborder="0" scrolling="0" width="100px" height="20px"></iframe>
</div>
</div>
</div>
<div class="content">
<div id="toc"><ul>
<li>
<p>Applications</p>
<ul>
<li><a href="https://joplinapp.org/desktop/">Desktop application</a></li>
<li><a href="https://joplinapp.org/mobile/">Mobile applications</a></li>
<li><a href="https://joplinapp.org/terminal/">Terminal application</a></li>
<li><a href="https://joplinapp.org/clipper/">Web Clipper</a></li>
</ul>
</li>
<li>
<p>Support</p>
<ul>
<li><a href="https://discourse.joplinapp.org">Joplin Forum</a></li>
<li><a href="https://joplinapp.org/markdown/">Markdown Guide</a></li>
<li><a href="https://joplinapp.org/e2ee/">How to enable end-to-end encryption</a></li>
<li><a href="https://joplinapp.org/conflict/">What is a conflict?</a></li>
<li><a href="https://joplinapp.org/debugging/">How to enable debug mode</a></li>
<li><a href="https://joplinapp.org/rich_text_editor/">About the Rich Text editor limitations</a></li>
<li><a href="https://joplinapp.org/faq/">FAQ</a></li>
</ul>
</li>
<li>
<p>Joplin API - Get Started</p>
<ul>
<li><a href="https://joplinapp.org/api/overview/">Joplin API Overview</a></li>
<li><a href="https://joplinapp.org/api/get_started/plugins/">Plugin development</a></li>
<li><a href="https://joplinapp.org/api/tutorials/toc_plugin/">Plugin tutorial</a></li>
</ul>
</li>
<li>
<p>Joplin API - References</p>
<ul>
<li><a href="https://joplinapp.org/api/references/plugin_api/classes/joplin.html">Plugin API</a></li>
<li><a href="https://joplinapp.org/api/references/rest_api/">Data API</a></li>
<li><a href="https://joplinapp.org/api/references/plugin_manifest/">Plugin manifest</a></li>
<li><a href="https://joplinapp.org/api/references/plugin_loading_rules/">Plugin loading rules</a></li>
</ul>
</li>
<li>
<p>Development</p>
<ul>
<li><a href="https://github.com/laurent22/joplin/blob/dev/BUILD.md">How to build the apps</a></li>
<li><a href="https://joplinapp.org/spec/e2ee/">End-to-end encryption spec</a></li>
<li><a href="https://joplinapp.org/spec/history/">Note History spec</a></li>
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
<p>Google Summer of Code 2020</p>
<ul>
<li><a href="https://joplinapp.org/gsoc2020/index/">Google Summer of Code 2020</a></li>
<li><a href="https://joplinapp.org/gsoc2020/ideas/">Project Ideas</a></li>
</ul>
</li>
<li>
<p>About</p>
<ul>
<li><a href="https://joplinapp.org/changelog/">Changelog (Desktop App)</a></li>
<li><a href="https://joplinapp.org/changelog_cli/">Changelog (CLI App)</a></li>
<li><a href="https://joplinapp.org/stats/">Stats</a></li>
<li><a href="https://joplinapp.org/donate/">Donate</a></li>
</ul>
</li>
</ul>
</div>
<div class="main">
<h1>Structure of file URLs in Joplin Server<a name="structure-of-file-urls-in-joplin-server" href="#structure-of-file-urls-in-joplin-server" class="heading-anchor">🔗</a></h1>
<p>To identify a file, Joplin Server supports two types of URLs:</p>
<h2>Access by ID<a name="access-by-id" href="#access-by-id" class="heading-anchor">🔗</a></h2>
<p><strong>Format:</strong> <code>BASE_URL/files/FILE_ID</code></p>
<p>This is the simplest way and it matches how other API items are accessed by ID.</p>
<p>For example: <code>https://example.com/api/files/5c7e0f3f54434ba</code></p>
<h2>Access by full path<a name="access-by-full-path" href="#access-by-full-path" class="heading-anchor">🔗</a></h2>
<p><strong>Format:</strong> <code>BASE_URL/files/SPECIAL_DIR:/path/to/file/:</code></p>
<p>This is to access a file by its full path. In this case, the path must be prefixed by <code>SPECIAL_DIR</code>, which can only be <code>root</code> at the moment. Then to differentiate the path from URL segments, it needs to be wrapped in colons <code>:</code>.</p>
<p>For example, to access the metadata of file <code>/my/file.txt</code></p>
<p><code>https://example.com/api/files/root:/my/file.txt:</code></p>
<p>To access its content:</p>
<p><code>https://example.com/api/files/root:/my/file.txt:/content</code></p>
<p>To access the root only (for example to list its content):</p>
<p><code>https://example.com/api/files/root:/:</code></p>
<p>Which can also be written as:</p>
<p><code>https://example.com/api/files/root</code></p>
<h2>Difference between API and web app end points<a name="difference-between-api-and-web-app-end-points" href="#difference-between-api-and-web-app-end-points" class="heading-anchor">🔗</a></h2>
<p>The API and web app end points are consistent in the way they access files, except that in one case the URLs will start with <code>/api</code> and the other with just <code>/</code>. For example, this would access the same file:</p>
<ul>
<li>API: <code>https://example.com/api/files/root:/my/file.txt:</code></li>
<li>Web: <code>https://example.com/files/root:/my/file.txt:</code></li>
</ul>
<div class="bottom-links">
<a href="https://github.com/laurent22/joplin/blob/dev/readme/spec/server_file_url_format.md">
<i class="fa fa-github"></i> Improve this doc
</a>
</div>
<script>
function stickyHeader() {
return; // Disabled
if ($(window).scrollTop() > 179) {
$('.nav').addClass('sticky');
} else {
$('.nav').removeClass('sticky');
}
}
$('#toc').hide();
$('.help').click(function(event) {
event.preventDefault();
$('#toc').show();
});
$(window).scroll(function() {
stickyHeader();
});
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-103586105-1', 'auto');
ga('send', 'pageview');
</script>
</div></div>
<div class="footer">
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/sync_lock.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/sync_lock.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -498,7 +500,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/spec/sync_lock.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/terminal.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/terminal.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -1117,7 +1119,7 @@ version
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/1_welcome_to_joplin.
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/1_welcome_to_joplin.
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -486,7 +488,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/1_welcome_to_joplin.
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/2_importing_and_expo
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/2_importing_and_expo
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -446,7 +448,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/2_importing_and_expo
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/3_synchronising_your
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/3_synchronising_your
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -450,7 +452,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/3_synchronising_your
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/4_tips.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/4_tips.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -503,7 +505,7 @@ $$</p>
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -81,7 +81,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/5_privacy.md
background-color: #eee;
border: 1px solid #ccc;
font-size: .85em;
word-break: break-all;
/* word-break: break-all; */
}
pre code {
border: none;
@@ -377,6 +377,8 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/5_privacy.md
<li><a href="https://joplinapp.org/spec/sync_lock/">Sync Lock spec</a></li>
<li><a href="https://joplinapp.org/spec/plugins/">Plugin Architecture spec</a></li>
<li><a href="https://joplinapp.org/spec/search_sorting/">Search Sorting spec</a></li>
<li><a href="https://joplinapp.org/spec/server_file_url_format/">Server: File URL Format</a></li>
<li><a href="https://joplinapp.org/spec/server_delta_sync/">Server: Delta Sync</a></li>
</ul>
</li>
<li>
@@ -470,7 +472,7 @@ https://github.com/laurent22/joplin/blob/dev/readme/welcome/5_privacy.md
</div></div>
<div class="footer">
Copyright (C) 2016-2020 Laurent Cozic
Copyright (C) 2016-2021 Laurent Cozic
</div>
</body>
</html>

View File

@@ -8,11 +8,11 @@ const tasks = {
// deleteBuildDirs: require('./packages/tools/gulp/tasks/deleteBuildDirs'),
completePublishAll: {
fn: async () => {
await utils.execCommandVerbose('git pull');
await utils.execCommandVerbose('git add -A');
await utils.execCommandVerbose('git commit -m "Releasing sub-packages"');
await utils.execCommandVerbose('lerna publish from-package -y');
await utils.execCommandVerbose('git push');
// await utils.execCommandVerbose('git pull');
await utils.execCommandVerbose('git', ['add', '-A']);
await utils.execCommandVerbose('git', ['commit', '-m', 'Releasing sub-packages']);
await utils.execCommandVerbose('lerna', ['publish', 'from-package', '-y']);
await utils.execCommandVerbose('git', ['push']);
},
},
};

View File

@@ -116,6 +116,7 @@
"**/_vieux/": true,
"**/.DS_Store": true,
"**/*.base64": true,
"**/*~": true,
"**/*.bundle.js": true,
"**/*.eot": true,
"**/*.icns": true,
@@ -309,6 +310,10 @@
"packages/renderer/MdToHtml/rules/sanitize_html.js": true,
"packages/app-mobile/lib/rnInjectedJs/": true,
"packages/app-mobile/lib/sql-extensions/spellfix.so": true,
"packages/server/dist/": true,
"packages/server/db-*.sqlite": true,
"packages/server/test.pid": true,
"packages/server/temp": true,
"packages/generator-joplin/generators/app/templates/api/": true,
"packages/app-mobile/node_modules/": true,
"phpunit.xml": true,

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