mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-24 10:27:10 +02:00
Merge branch 'dev' of github.com:laurent22/joplin into dev
This commit is contained in:
commit
c01219e6be
@ -36,6 +36,7 @@ If you want to start contributing to the project's code, please follow these gui
|
||||
- Before adding a new feature, ask about it in the [Github Issue Tracker](https://github.com/laurent22/joplin/issues?utf8=%E2%9C%93&q=is%3Aissue) or the [Joplin Forum](https://discourse.joplinapp.org/), or check if existing discussions exist to make sure the new functionality is desired.
|
||||
- **Changes that will consist in more than 50 lines of code should be discussed the [Joplin Forum](https://discourse.joplinapp.org/)**, so that you don't spend too much time implementing something that might not be accepted.
|
||||
- All the applications share the same backend (database, synchronisation, settings, models, business logic, etc.) so if you change something in the backend in one app, makes sure it still work in the other apps. Usually it does, but keep this in mind.
|
||||
- Pull requests that make many changes using an automated tool, like for spell fixing, styling, etc. will not be accepted. An exception would be if the changes have been discussed in the forum and someone has agreed to review **and test** the pull request.
|
||||
|
||||
Building the apps is relatively easy - please [see the build instructions](https://github.com/laurent22/joplin/blob/master/BUILD.md) for more details.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -14,8 +14,10 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.3.1\n"
|
||||
"X-Generator: Poedit 2.4.1\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: \n"
|
||||
|
||||
#: CliClient/app/command-cp.js:13
|
||||
msgid ""
|
||||
@ -822,7 +824,7 @@ msgstr "Exportando para \"%s\" com o formato \"%s\". Por favor, aguarde..."
|
||||
#: ElectronClient/InteropServiceHelper.js:164
|
||||
#, javascript-format
|
||||
msgid "Could not export notes: %s"
|
||||
msgstr "Não foi possível exportar a nota: %s"
|
||||
msgstr "Não foi possível exportar notas: %s"
|
||||
|
||||
#: ElectronClient/checkForUpdates.js:138
|
||||
msgid "Current version is up-to-date."
|
||||
@ -932,9 +934,9 @@ msgid "Delete"
|
||||
msgstr "Excluir"
|
||||
|
||||
#: ElectronClient/gui/SideBar/SideBar.min.js:276
|
||||
#, fuzzy, javascript-format
|
||||
#, javascript-format
|
||||
msgid "Remove tag \"%s\" and its descendant tags from all notes?"
|
||||
msgstr "Remover a tag \"%s\" de todas as notas?"
|
||||
msgstr "Remover a tag \"%s\" e seus descendentes de todas as notas?"
|
||||
|
||||
#: ElectronClient/gui/SideBar/SideBar.min.js:278
|
||||
#: ElectronClient/gui/SideBar.min.js:292
|
||||
@ -1837,7 +1839,7 @@ msgstr "Estatísticas"
|
||||
#: ElectronClient/gui/NoteContentPropertiesDialog.js:111
|
||||
#, javascript-format
|
||||
msgid "Read time: %s min"
|
||||
msgstr ""
|
||||
msgstr "Tempo de leitura: %s min"
|
||||
|
||||
#: ElectronClient/gui/NoteContentPropertiesDialog.js:112
|
||||
#: ElectronClient/gui/ShareNoteDialog.js:175
|
||||
@ -2214,7 +2216,7 @@ msgstr "Nível ID desconhecido: %s"
|
||||
|
||||
#: ReactNativeClient/lib/SyncTargetAmazonS3.js:28
|
||||
msgid "AWS S3"
|
||||
msgstr ""
|
||||
msgstr "AWS S3"
|
||||
|
||||
#: ReactNativeClient/lib/SyncTargetDropbox.js:25
|
||||
msgid "Dropbox"
|
||||
@ -2358,15 +2360,15 @@ msgstr "Senha do WebDAV"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:189
|
||||
msgid "AWS S3 bucket"
|
||||
msgstr ""
|
||||
msgstr "AWS S3 bucket"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:200
|
||||
msgid "AWS key"
|
||||
msgstr ""
|
||||
msgstr "AWS key"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:210
|
||||
msgid "AWS secret"
|
||||
msgstr ""
|
||||
msgstr "AWS secret"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:224
|
||||
msgid "Attachment download behaviour"
|
||||
@ -2609,12 +2611,12 @@ msgstr "Atualizar automaticamente o aplicativo"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:596
|
||||
msgid "Get pre-releases when checking for updates"
|
||||
msgstr "Obter pre-releases quando for checar atualizações"
|
||||
msgstr "Obter pre-lançamentos quando checar por atualizações"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:596
|
||||
#, javascript-format
|
||||
msgid "See the pre-release page for more details: %s"
|
||||
msgstr "Ver página de pre-release para mais detalhes: %s"
|
||||
msgstr "Ver página de pre-lançamentos para mais detalhes: %s"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:604
|
||||
msgid "Synchronisation interval"
|
||||
@ -2697,7 +2699,7 @@ msgstr "Modo do Teclado"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:650
|
||||
msgid "Default"
|
||||
msgstr "Default"
|
||||
msgstr "Padrão"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:651
|
||||
msgid "Emacs"
|
||||
@ -2881,17 +2883,16 @@ msgstr ""
|
||||
"%s"
|
||||
|
||||
#: ReactNativeClient/lib/models/Tag.js:384
|
||||
#, fuzzy
|
||||
msgid "Cannot move tag to this location."
|
||||
msgstr "Não é possível mover a nota para este local"
|
||||
msgstr "Não é possível mover a tag para este local"
|
||||
|
||||
#: ReactNativeClient/lib/models/Tag.js:429
|
||||
msgid "Tag name cannot start or end with a `/`."
|
||||
msgstr ""
|
||||
msgstr "O nome da tag não pode começar ou terminar com `/`."
|
||||
|
||||
#: ReactNativeClient/lib/models/Tag.js:431
|
||||
msgid "Tag name cannot contain `//`."
|
||||
msgstr ""
|
||||
msgstr "O nome da tag não pode conter `//`."
|
||||
|
||||
#: ReactNativeClient/lib/models/Tag.js:482
|
||||
#, javascript-format
|
||||
@ -3514,7 +3515,6 @@ msgid "Forward"
|
||||
msgstr "Encaminhar"
|
||||
|
||||
#: ReactNativeClient/lib/commands/synchronize.js:17
|
||||
#, fuzzy
|
||||
msgid "Synchronize"
|
||||
msgstr "Sincronizar"
|
||||
|
||||
|
@ -24,8 +24,8 @@ msgid ""
|
||||
"Duplicates the notes matching <note> to [notebook]. If no notebook is "
|
||||
"specified the note is duplicated in the current notebook."
|
||||
msgstr ""
|
||||
"Дублирует заметки соответствующие выражению <note> в блокнот [notebook]. "
|
||||
"Если блокнот не указан - заметки дублируются в текущем блокноте."
|
||||
"Дублирует заметки, соответствующие выражению <note>, в блокнот [notebook]. "
|
||||
"Если блокнот не указан, заметки дублируются в текущем блокноте."
|
||||
|
||||
#: CliClient/app/command-cp.js:24 CliClient/app/command-cp.js:27
|
||||
#: CliClient/app/command-import.js:34 CliClient/app/command-mv.js:22
|
||||
@ -75,7 +75,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Отображает только элементы заданного типа(ов). Поддерживаемые типы: `n` для "
|
||||
"заметок, `t` для задач или `nt` для заметок и задач (напр. `-tt` выведет "
|
||||
"только задачи, в то время как `-ttd` выведет и заметки и задачи)."
|
||||
"только задачи, в то время как `-ttd` выведет и заметки, и задачи)."
|
||||
|
||||
#: CliClient/app/command-ls.js:31
|
||||
msgid "Either \"text\" or \"json\""
|
||||
@ -230,7 +230,7 @@ msgstr "Расшифровано элементов: %d"
|
||||
#, javascript-format
|
||||
msgid "Skipped items: %d (use --retry-failed-items to retry decrypting them)"
|
||||
msgstr ""
|
||||
"Пропущено элементов: %d (используйте команду --retry-failed-items чтобы "
|
||||
"Пропущено элементов: %d (используйте команду --retry-failed-items, чтобы "
|
||||
"повторить попытку расшифровки)"
|
||||
|
||||
#: CliClient/app/command-e2ee.js:68
|
||||
@ -273,7 +273,7 @@ msgstr "Создает новый блокнот."
|
||||
#: CliClient/app/command-mv.js:14
|
||||
msgid "Moves the notes matching <note> to [notebook]."
|
||||
msgstr ""
|
||||
"Перемещает заметки соответствующие выражению <note> в блокнот [notebook]."
|
||||
"Перемещает заметки, соответствующие выражению <note>, в блокнот [notebook]."
|
||||
|
||||
#: CliClient/app/command-config.js:13
|
||||
msgid ""
|
||||
@ -282,12 +282,12 @@ msgid ""
|
||||
"current configuration."
|
||||
msgstr ""
|
||||
"Выводит или задает значение параметра конфигурации. Если значение [value] не "
|
||||
"указано - выведет текущее значение параметра [name]. Если не указаны ни имя "
|
||||
"[name], ни значение [value] - выведет всю текущую конфигурацию."
|
||||
"указано, выведет текущее значение параметра [name]. Если не указаны ни имя "
|
||||
"[name], ни значение [value], выведет всю текущую конфигурацию."
|
||||
|
||||
#: CliClient/app/command-config.js:18
|
||||
msgid "Also displays unset and hidden config variables."
|
||||
msgstr "Также выводит не установленные и скрытые параметры конфигурации."
|
||||
msgstr "Также выводит неустановленные и скрытые параметры конфигурации."
|
||||
|
||||
#: CliClient/app/command-config.js:79
|
||||
#, javascript-format
|
||||
@ -364,7 +364,7 @@ msgid ""
|
||||
"operation."
|
||||
msgstr ""
|
||||
"Файл блокировки уже существует. Если вы уверены, что синхронизация не "
|
||||
"выполняется - вы можете вручную удалить файл блокировки \"%s\" и возобновить "
|
||||
"выполняется, вы можете вручную удалить файл блокировки \"%s\" и возобновить "
|
||||
"операцию."
|
||||
|
||||
#: CliClient/app/command-sync.js:175
|
||||
@ -555,7 +555,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Один или несколько элементов зашифрованы. Для расшифровки может "
|
||||
"потребоваться мастер-пароль. Для начала расшифровки введите `e2ee decrypt`. "
|
||||
"Если мастер-пароль уже был введен - зашифрованные элементы уже "
|
||||
"Если мастер-пароль уже был введен, зашифрованные элементы уже "
|
||||
"расшифровываются в фоновом режиме и вскоре будут доступны."
|
||||
|
||||
#: CliClient/app/gui/NoteWidget.js:50
|
||||
@ -647,7 +647,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"В любой команде можно ссылаться на заметку или блокнот по названию или ID, "
|
||||
"либо используя ярлыки `$n` или `$b`, указывающие на текущую заметку или "
|
||||
"блокнот соответственно. С помощью `$c` можно ссылаться на текущий выбранный "
|
||||
"блокнот, соответственно. С помощью `$c` можно ссылаться на текущий выбранный "
|
||||
"элемент."
|
||||
|
||||
#: CliClient/app/command-help.js:79
|
||||
@ -664,7 +664,7 @@ msgstr ""
|
||||
|
||||
#: CliClient/app/command-help.js:81
|
||||
msgid "To maximise/minimise the console, press \"tc\"."
|
||||
msgstr "Чтобы развернуть/свернуть консоль используйте комбинацию \"tc\"."
|
||||
msgstr "Чтобы развернуть/свернуть консоль, используйте комбинацию \"tc\"."
|
||||
|
||||
#: CliClient/app/command-help.js:82
|
||||
msgid "To enter command line mode, press \":\""
|
||||
@ -678,7 +678,7 @@ msgstr "Для выхода из режима командной строки н
|
||||
msgid ""
|
||||
"For the list of keyboard shortcuts and config options, type `help keymap`"
|
||||
msgstr ""
|
||||
"Чтобы получить список сочетаний клавиш и настроек конфигурации введите `help "
|
||||
"Чтобы получить список сочетаний клавиш и настроек конфигурации, введите `help "
|
||||
"keymap`"
|
||||
|
||||
#: CliClient/app/command-todo.js:14
|
||||
@ -690,7 +690,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"<todo-command> может принимать значения \"toggle\" или \"clear\". \"toggle\" "
|
||||
"переключает статус выбранной задачи (с завершенной на незавершенную и "
|
||||
"наоборот). При применении к обычной заметке - заметка преобразуется в "
|
||||
"наоборот). При применении к обычной заметке она преобразуется в "
|
||||
"задачу. \"clear\" преобразует выбранную задачу в обычную заметку."
|
||||
|
||||
#: CliClient/app/command-exit.js:11
|
||||
@ -815,7 +815,7 @@ msgid ""
|
||||
"Type a note title or part of its content to jump to it. Or type # followed "
|
||||
"by a tag name, or @ followed by a notebook name."
|
||||
msgstr ""
|
||||
"Введите название заметки чтобы перейти к ней, либо введите #имя_метки или "
|
||||
"Введите название заметки, чтобы перейти к ней, либо введите #имя_метки или "
|
||||
"@имя_блокнота."
|
||||
|
||||
#: ElectronClient/plugins/GotoAnything.min.js:493
|
||||
@ -1117,7 +1117,7 @@ msgid ""
|
||||
"Please wait for all attachments to be downloaded and decrypted. You may also "
|
||||
"switch to %s to edit the note."
|
||||
msgstr ""
|
||||
"Пожалуйста дождитесь окончания загрузки и расшифровки всех вложений. Вы "
|
||||
"Пожалуйста, дождитесь окончания загрузки и расшифровки всех вложений. Вы "
|
||||
"можете переключиться на %s для редактирования заметки."
|
||||
|
||||
#: ElectronClient/gui/NoteEditor/utils/useMessageHandler.js:70
|
||||
@ -1218,7 +1218,7 @@ msgstr "Заголовок"
|
||||
#: ElectronClient/gui/NoteEditor/commands/editorCommandDeclarations.js:75
|
||||
#: ElectronClient/gui/NoteText.min.js:1770
|
||||
msgid "Horizontal Rule"
|
||||
msgstr "Горизотальный разделитель"
|
||||
msgstr "Горизонтальный разделитель"
|
||||
|
||||
#: ElectronClient/gui/NoteEditor/commands/focusElementNoteTitle.js:15
|
||||
msgid "Note title"
|
||||
@ -1762,7 +1762,7 @@ msgstr ""
|
||||
"\n"
|
||||
"1. Синхронизируйте все ваши устройства.\n"
|
||||
"2. Нажмите “%s”.\n"
|
||||
"3. Ждите завершения. Во время работы избегайте изменения заметок на других "
|
||||
"3. Ждите завершения. Во время работы не изменяйте заметки на других "
|
||||
"устройствах, чтобы избежать конфликтов.\n"
|
||||
"4. После завершения синхронизации на этом устройстве синхронизируйте все "
|
||||
"остальные устройства и ждите завершения.\n"
|
||||
@ -1782,7 +1782,7 @@ msgstr "Шифрование:"
|
||||
#: ElectronClient/gui/StatusScreen.min.js:33
|
||||
msgid "Please select where the sync status should be exported to"
|
||||
msgstr ""
|
||||
"Пожалуйста, выберите куда должен быть экспортирован статус синхронизации"
|
||||
"Пожалуйста, выберите, куда должен быть экспортирован статус синхронизации"
|
||||
|
||||
#: ElectronClient/gui/StatusScreen.min.js:71
|
||||
#: ReactNativeClient/lib/components/screens/status.js:112
|
||||
@ -2194,7 +2194,7 @@ msgstr ""
|
||||
"Откройте следующую ссылку в вашем браузере для аутентификации приложения. "
|
||||
"Приложением будет создан отдельный каталог \"Apps/Joplin\", в котором будет "
|
||||
"происходить работа с файлами. У приложения не будет доступа ни к каким-либо "
|
||||
"файлам за пределами этого каталога ни к каким-либо другим личным данным. "
|
||||
"файлам за пределами этого каталога, ни к каким-либо другим личным данным. "
|
||||
"Никакая информация не будет передана третьим лицам."
|
||||
|
||||
#: ReactNativeClient/lib/registry.js:156
|
||||
@ -2391,9 +2391,9 @@ msgid ""
|
||||
"In \"Auto\", they are downloaded when you open the note. In \"Always\", all "
|
||||
"the attachments are downloaded whether you open the note or not."
|
||||
msgstr ""
|
||||
"В режиме “Ручной” вложения загружаются толко если на них кликнуть. В режиме "
|
||||
"В режиме “Ручной” вложения загружаются, только если на них кликнуть. В режиме "
|
||||
"“Автоматически” вложения загружаются при открытии заметки. В режиме “Всегда” "
|
||||
"вложения загружаются не зависимо от того была заметка открыта или нет."
|
||||
"вложения загружаются вне зависимости от того, была заметка открыта или нет."
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:228
|
||||
msgid "Always"
|
||||
@ -2433,11 +2433,11 @@ msgstr "Автоматическая смена темы в соответств
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:327
|
||||
msgid "Preferred light theme"
|
||||
msgstr "Предпочитемая светлая тема"
|
||||
msgstr "Предпочитаемая светлая тема"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:341
|
||||
msgid "Preferred dark theme"
|
||||
msgstr "Предпочитемая тёмная тема"
|
||||
msgstr "Предпочитаемая тёмная тема"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:346
|
||||
msgid "Show note counts"
|
||||
@ -2526,7 +2526,7 @@ msgstr "Включить поддержку синтаксиса Fountain"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:468
|
||||
msgid "Enable Mermaid diagrams support"
|
||||
msgstr "Включить поддержку Mermaid диаграм"
|
||||
msgstr "Включить поддержку диаграмм Mermaid"
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:470
|
||||
msgid "Enable ==mark== syntax"
|
||||
@ -2609,7 +2609,7 @@ msgid ""
|
||||
"font."
|
||||
msgstr ""
|
||||
"Для корректного отображения требуется задать *моноширинный* шрифт. Если "
|
||||
"шрифт не был задан или выбран некорректный шрифт будет использован шрифт по "
|
||||
"шрифт не был задан или выбран некорректный шрифт, будет использован шрифт по "
|
||||
"умолчанию."
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:589
|
||||
@ -2663,7 +2663,7 @@ msgid ""
|
||||
"If none is provided it will try to auto-detect the default editor."
|
||||
msgstr ""
|
||||
"Команда запуска внешнего текстового редактора (может включать аргументы "
|
||||
"командной строки). Если команда не задана - будет произведена попытка "
|
||||
"командной строки). Если команда не задана, будет произведена попытка "
|
||||
"автоматического определения редактора по умолчанию."
|
||||
|
||||
#: ReactNativeClient/lib/models/Setting.js:623
|
||||
@ -2734,7 +2734,7 @@ msgid ""
|
||||
"changes before clicking on \"Check synchronisation configuration\"."
|
||||
msgstr ""
|
||||
"Разделенный запятыми список путей к файлам сертификатов (поддерживаются как "
|
||||
"каталоги так и абсолютные пути к отдельным файлам). Например: /my/cert_dir, /"
|
||||
"каталоги, так и абсолютные пути к отдельным файлам). Например: /my/cert_dir, /"
|
||||
"other/custom.pem. Обратите внимание, что если вы вносите изменения в "
|
||||
"настройки TLS, вы должны сохранить внесенные изменения перед нажатием на "
|
||||
"\"Проверить настройки синхронизации\"."
|
||||
@ -2793,7 +2793,7 @@ msgid ""
|
||||
"item with a factor of 2 will take twice as much space as an item with a "
|
||||
"factor of 1.Restart app to see changes."
|
||||
msgstr ""
|
||||
"Параметр \"фактор\" отвечает за то, как элемент будет расти или уменьшаться "
|
||||
"Параметр \"фактор\" отвечает за то, как элемент будет расти или уменьшаться, "
|
||||
"чтобы поместиться в свободное пространство контейнера. Элемент с фактором 2 "
|
||||
"займёт в 2 раза больше места, чем элемент с фактором 1. Перезапустите "
|
||||
"приложение, чтобы изменения вступили в силу."
|
||||
@ -2854,7 +2854,7 @@ msgid ""
|
||||
"the WYSIWYG editor."
|
||||
msgstr ""
|
||||
"Данные плагины расширяют отрисовщик Markdown доп. функциями. Учтите, что эти "
|
||||
"функции не являются стандартными для Markdown и большонство из них будет "
|
||||
"функции не являются стандартными для Markdown и большинство из них будет "
|
||||
"работать только в Joplin. Кроме того, некоторые из них *несовместимы* с "
|
||||
"редактором WYSIWYG. При открытии заметки с такими плагинами в WYSIWYG "
|
||||
"форматирование будет утеряно. Ниже отмечены плагины, совместимые с "
|
||||
@ -3235,7 +3235,7 @@ msgstr "Только ошибки"
|
||||
|
||||
#: ReactNativeClient/lib/components/screens/config.js:50
|
||||
msgid "Warning"
|
||||
msgstr "Предупрежение"
|
||||
msgstr "Предупреждение"
|
||||
|
||||
#: ReactNativeClient/lib/components/screens/config.js:50
|
||||
msgid ""
|
||||
@ -3744,7 +3744,7 @@ msgstr ""
|
||||
#~ "to continue?"
|
||||
#~ msgstr ""
|
||||
#~ "Отключение шифрования означает, что *все* ваши заметки и вложения будут "
|
||||
#~ "расшифрованы и отправлены в незашифрованом виде к цели синхронизации. Вы "
|
||||
#~ "расшифрованы и отправлены в незашифрованном виде к цели синхронизации. Вы "
|
||||
#~ "хотите продолжить?"
|
||||
|
||||
#~ msgid "Master Keys"
|
||||
|
@ -1,7 +1,7 @@
|
||||
const { _, setLocale } = require('lib/locale.js');
|
||||
const { shim } = require('lib/shim');
|
||||
const { dirname, toSystemSlashes } = require('lib/path-utils.js');
|
||||
const { BrowserWindow, nativeTheme } = require('electron');
|
||||
const { shim } = require('lib/shim.js');
|
||||
|
||||
class Bridge {
|
||||
|
||||
@ -194,6 +194,8 @@ class Bridge {
|
||||
execPath: process.env.PORTABLE_EXECUTABLE_FILE,
|
||||
};
|
||||
app.relaunch(options);
|
||||
} else if (shim.isLinux()) {
|
||||
this.showInfoMessageBox(_('The app is now going to close. Please relaunch it to complete the process.'));
|
||||
} else {
|
||||
app.relaunch();
|
||||
}
|
||||
|
127
ElectronClient/gui/KeymapConfig/KeymapConfigScreen.js
Normal file
127
ElectronClient/gui/KeymapConfig/KeymapConfigScreen.js
Normal file
File diff suppressed because one or more lines are too long
51
ElectronClient/gui/KeymapConfig/ShortcutRecorder.js
Normal file
51
ElectronClient/gui/KeymapConfig/ShortcutRecorder.js
Normal file
@ -0,0 +1,51 @@
|
||||
'use strict';
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
const React = require('react');
|
||||
const react_1 = require('react');
|
||||
const KeymapService_1 = require('../../lib/services/KeymapService');
|
||||
const styles_1 = require('./styles');
|
||||
const { _ } = require('lib/locale');
|
||||
const keymapService = KeymapService_1.default.instance();
|
||||
exports.ShortcutRecorder = ({ onSave, onReset, onCancel, onError, initialAccelerator, commandName, themeId }) => {
|
||||
const styles = styles_1.default(themeId);
|
||||
const [accelerator, setAccelerator] = react_1.useState(initialAccelerator);
|
||||
const [saveAllowed, setSaveAllowed] = react_1.useState(true);
|
||||
react_1.useEffect(() => {
|
||||
try {
|
||||
// Only perform validations if there's an accelerator provided
|
||||
// Otherwise performing a save means that it's going to be disabled
|
||||
if (accelerator) {
|
||||
keymapService.validateAccelerator(accelerator);
|
||||
keymapService.validateKeymap({ accelerator, command: commandName });
|
||||
}
|
||||
// Discard previous errors
|
||||
onError({ recorderError: null });
|
||||
setSaveAllowed(true);
|
||||
} catch (recorderError) {
|
||||
onError({ recorderError });
|
||||
setSaveAllowed(false);
|
||||
}
|
||||
}, [accelerator]);
|
||||
const handleKeydown = (event) => {
|
||||
event.preventDefault();
|
||||
const newAccelerator = keymapService.domToElectronAccelerator(event);
|
||||
switch (newAccelerator) {
|
||||
case 'Enter':
|
||||
if (saveAllowed) { return onSave({ commandName, accelerator }); }
|
||||
break;
|
||||
case 'Escape':
|
||||
return onCancel({ commandName });
|
||||
case 'Backspace':
|
||||
case 'Delete':
|
||||
return setAccelerator('');
|
||||
default:
|
||||
setAccelerator(newAccelerator);
|
||||
}
|
||||
};
|
||||
return (React.createElement('div', { style: styles.recorderContainer },
|
||||
React.createElement('input', { value: accelerator, placeholder: _('Press the shortcut'), onKeyDown: handleKeydown, style: styles.recorderInput, readOnly: true, autoFocus: true }),
|
||||
React.createElement('button', { style: styles.inlineButton, disabled: !saveAllowed, onClick: () => onSave({ commandName, accelerator }) }, _('Save')),
|
||||
React.createElement('button', { style: styles.inlineButton, onClick: () => onReset({ commandName }) }, _('Restore')),
|
||||
React.createElement('button', { style: styles.inlineButton, onClick: () => onCancel({ commandName }) }, _('Cancel'))));
|
||||
};
|
||||
// # sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2hvcnRjdXRSZWNvcmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlNob3J0Y3V0UmVjb3JkZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0JBQStCO0FBQy9CLGlDQUEyRDtBQUUzRCxvRUFBNkQ7QUFDN0QscUNBQStCO0FBRS9CLE1BQU0sRUFBRSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDcEMsTUFBTSxhQUFhLEdBQUcsdUJBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQVlsQyxRQUFBLGdCQUFnQixHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBeUIsRUFBRSxFQUFFO0lBQzNJLE1BQU0sTUFBTSxHQUFHLGdCQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFaEMsTUFBTSxDQUFDLFdBQVcsRUFBRSxjQUFjLENBQUMsR0FBRyxnQkFBUSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDbkUsTUFBTSxDQUFDLFdBQVcsRUFBRSxjQUFjLENBQUMsR0FBRyxnQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXJELGlCQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2QsSUFBSTtZQUNILDhEQUE4RDtZQUM5RCxtRUFBbUU7WUFDbkUsSUFBSSxXQUFXLEVBQUU7Z0JBQ2hCLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDL0MsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQzthQUNwRTtZQUVELDBCQUEwQjtZQUMxQixPQUFPLENBQUMsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNqQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDckI7UUFBQyxPQUFPLGFBQWEsRUFBRTtZQUN2QixPQUFPLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQzNCLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN0QjtJQUNGLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFbEIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxLQUFvQyxFQUFFLEVBQUU7UUFDOUQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRSxRQUFRLGNBQWMsRUFBRTtZQUN4QixLQUFLLE9BQU87Z0JBQ1gsSUFBSSxXQUFXO29CQUFFLE9BQU8sTUFBTSxDQUFDLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQzdELE1BQU07WUFDUCxLQUFLLFFBQVE7Z0JBQ1osT0FBTyxRQUFRLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ2xDLEtBQUssV0FBVyxDQUFDO1lBQ2pCLEtBQUssUUFBUTtnQkFDWixPQUFPLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMzQjtnQkFDQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDL0I7SUFDRixDQUFDLENBQUM7SUFFRixPQUFPLENBQ04sNkJBQUssS0FBSyxFQUFFLE1BQU0sQ0FBQyxpQkFBaUI7UUFDbkMsK0JBQ0MsS0FBSyxFQUFFLFdBQVcsRUFDbEIsV0FBVyxFQUFFLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxFQUNwQyxTQUFTLEVBQUUsYUFBYSxFQUN4QixLQUFLLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFDM0IsUUFBUSxRQUNSLFNBQVMsU0FDUjtRQUVGLGdDQUFRLEtBQUssRUFBRSxNQUFNLENBQUMsWUFBWSxFQUFFLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDLElBQzdHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDRjtRQUNULGdDQUFRLEtBQUssRUFBRSxNQUFNLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxJQUN6RSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQ0w7UUFDVCxnQ0FBUSxLQUFLLEVBQUUsTUFBTSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsSUFDMUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUNKLENBQ0osQ0FDTixDQUFDO0FBQ0gsQ0FBQyxDQUFDIn0=
|
53
ElectronClient/gui/KeymapConfig/styles/index.js
Normal file
53
ElectronClient/gui/KeymapConfig/styles/index.js
Normal file
@ -0,0 +1,53 @@
|
||||
'use strict';
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
const { buildStyle } = require('lib/theme');
|
||||
function styles(themeId) {
|
||||
return buildStyle('KeymapConfigScreen', themeId, (theme) => {
|
||||
return {
|
||||
container: Object.assign(Object.assign({}, theme.containerStyle), { padding: 16 }),
|
||||
actionsContainer: {
|
||||
display: 'flex',
|
||||
flexDirection: 'row',
|
||||
},
|
||||
recorderContainer: {
|
||||
padding: 2,
|
||||
flexGrow: 1,
|
||||
},
|
||||
filterInput: Object.assign(Object.assign({}, theme.inputStyle), { flexGrow: 1, minHeight: 29, alignSelf: 'center' }),
|
||||
recorderInput: Object.assign(Object.assign({}, theme.inputStyle), { minHeight: 29 }),
|
||||
label: Object.assign(Object.assign({}, theme.textStyle), { alignSelf: 'center', marginRight: 10 }),
|
||||
table: Object.assign(Object.assign({}, theme.containerStyle), { marginTop: 16, overflow: 'auto', width: '100%' }),
|
||||
tableShortcutColumn: Object.assign(Object.assign({}, theme.textStyle), { width: '60%' }),
|
||||
tableCommandColumn: Object.assign(Object.assign({}, theme.textStyle), { width: 'auto' }),
|
||||
tableCell: {
|
||||
display: 'flex',
|
||||
flexDirection: 'row',
|
||||
},
|
||||
tableCellContent: {
|
||||
flexGrow: 1,
|
||||
alignSelf: 'center',
|
||||
},
|
||||
tableCellStatus: {
|
||||
height: '100%',
|
||||
alignSelf: 'center',
|
||||
},
|
||||
kbd: {
|
||||
fontFamily: 'sans-serif',
|
||||
border: '1px solid',
|
||||
borderRadius: 4,
|
||||
backgroundColor: theme.raisedBackgroundColor,
|
||||
padding: 2,
|
||||
paddingLeft: 6,
|
||||
paddingRight: 6,
|
||||
},
|
||||
disabled: {
|
||||
color: theme.colorFaded,
|
||||
fontStyle: 'italic',
|
||||
},
|
||||
inlineButton: Object.assign(Object.assign({}, theme.buttonStyle), { marginLeft: 12 }),
|
||||
warning: Object.assign(Object.assign({}, theme.textStyle), { backgroundColor: theme.warningBackgroundColor, paddingLeft: 16, paddingRight: 16, paddingTop: 2, paddingBottom: 2 }),
|
||||
};
|
||||
});
|
||||
}
|
||||
exports.default = styles;
|
||||
// # sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFNUMsU0FBd0IsTUFBTSxDQUFDLE9BQWU7SUFDN0MsT0FBTyxVQUFVLENBQUMsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7UUFDL0QsT0FBTztZQUNOLFNBQVMsa0NBQ0wsS0FBSyxDQUFDLGNBQWMsS0FDdkIsT0FBTyxFQUFFLEVBQUUsR0FDWDtZQUNELGdCQUFnQixFQUFFO2dCQUNqQixPQUFPLEVBQUUsTUFBTTtnQkFDZixhQUFhLEVBQUUsS0FBSzthQUNwQjtZQUNELGlCQUFpQixFQUFFO2dCQUNsQixPQUFPLEVBQUUsQ0FBQztnQkFDVixRQUFRLEVBQUUsQ0FBQzthQUNYO1lBQ0QsV0FBVyxrQ0FDUCxLQUFLLENBQUMsVUFBVSxLQUNuQixRQUFRLEVBQUUsQ0FBQyxFQUNYLFNBQVMsRUFBRSxFQUFFLEVBQ2IsU0FBUyxFQUFFLFFBQVEsR0FDbkI7WUFDRCxhQUFhLGtDQUNULEtBQUssQ0FBQyxVQUFVLEtBQ25CLFNBQVMsRUFBRSxFQUFFLEdBQ2I7WUFDRCxLQUFLLGtDQUNELEtBQUssQ0FBQyxTQUFTLEtBQ2xCLFNBQVMsRUFBRSxRQUFRLEVBQ25CLFdBQVcsRUFBRSxFQUFFLEdBQ2Y7WUFDRCxLQUFLLGtDQUNELEtBQUssQ0FBQyxjQUFjLEtBQ3ZCLFNBQVMsRUFBRSxFQUFFLEVBQ2IsUUFBUSxFQUFFLE1BQU0sRUFDaEIsS0FBSyxFQUFFLE1BQU0sR0FDYjtZQUNELG1CQUFtQixrQ0FDZixLQUFLLENBQUMsU0FBUyxLQUNsQixLQUFLLEVBQUUsS0FBSyxHQUNaO1lBQ0Qsa0JBQWtCLGtDQUNkLEtBQUssQ0FBQyxTQUFTLEtBQ2xCLEtBQUssRUFBRSxNQUFNLEdBQ2I7WUFDRCxTQUFTLEVBQUU7Z0JBQ1YsT0FBTyxFQUFFLE1BQU07Z0JBQ2YsYUFBYSxFQUFFLEtBQUs7YUFDcEI7WUFDRCxnQkFBZ0IsRUFBRTtnQkFDakIsUUFBUSxFQUFFLENBQUM7Z0JBQ1gsU0FBUyxFQUFFLFFBQVE7YUFDbkI7WUFDRCxlQUFlLEVBQUU7Z0JBQ2hCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLFNBQVMsRUFBRSxRQUFRO2FBQ25CO1lBQ0QsR0FBRyxFQUFFO2dCQUNKLFVBQVUsRUFBRSxZQUFZO2dCQUN4QixNQUFNLEVBQUUsV0FBVztnQkFDbkIsWUFBWSxFQUFFLENBQUM7Z0JBQ2YsZUFBZSxFQUFFLEtBQUssQ0FBQyxxQkFBcUI7Z0JBQzVDLE9BQU8sRUFBRSxDQUFDO2dCQUNWLFdBQVcsRUFBRSxDQUFDO2dCQUNkLFlBQVksRUFBRSxDQUFDO2FBQ2Y7WUFDRCxRQUFRLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUN2QixTQUFTLEVBQUUsUUFBUTthQUNuQjtZQUNELFlBQVksa0NBQ1IsS0FBSyxDQUFDLFdBQVcsS0FDcEIsVUFBVSxFQUFFLEVBQUUsR0FDZDtZQUNELE9BQU8sa0NBQ0gsS0FBSyxDQUFDLFNBQVMsS0FDbEIsZUFBZSxFQUFFLEtBQUssQ0FBQyxzQkFBc0IsRUFDN0MsV0FBVyxFQUFFLEVBQUUsRUFDZixZQUFZLEVBQUUsRUFBRSxFQUNoQixVQUFVLEVBQUUsQ0FBQyxFQUNiLGFBQWEsRUFBRSxDQUFDLEdBQ2hCO1NBQ0QsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQW5GRCx5QkFtRkMifQ==
|
33
ElectronClient/gui/KeymapConfig/utils/getLabel.js
Normal file
33
ElectronClient/gui/KeymapConfig/utils/getLabel.js
Normal file
@ -0,0 +1,33 @@
|
||||
'use strict';
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
const CommandService_1 = require('../../../lib/services/CommandService');
|
||||
const { _ } = require('lib/locale');
|
||||
const { shim } = require('lib/shim');
|
||||
const commandService = CommandService_1.default.instance();
|
||||
const getLabel = (commandName) => {
|
||||
if (commandService.exists(commandName)) { return commandService.label(commandName); }
|
||||
// Some commands are not registered in CommandService at the moment
|
||||
// Following hard-coded labels are used as a workaround
|
||||
switch (commandName) {
|
||||
case 'quit':
|
||||
return _('Quit');
|
||||
case 'insertTemplate':
|
||||
return _('Insert template');
|
||||
case 'zoomActualSize':
|
||||
return _('Actual Size');
|
||||
case 'gotoAnything':
|
||||
return _('Goto Anything...');
|
||||
case 'help':
|
||||
return _('Website and documentation');
|
||||
case 'hideApp':
|
||||
return _('Hide Joplin');
|
||||
case 'closeWindow':
|
||||
return _('Close Window');
|
||||
case 'config':
|
||||
return shim.isMac() ? _('Preferences') : _('Options');
|
||||
default:
|
||||
throw new Error(`Command: ${commandName} is unknown`);
|
||||
}
|
||||
};
|
||||
exports.default = getLabel;
|
||||
// # sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0TGFiZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnZXRMYWJlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlFQUFrRTtBQUVsRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ3BDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7QUFFckMsTUFBTSxjQUFjLEdBQUcsd0JBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUVqRCxNQUFNLFFBQVEsR0FBRyxDQUFDLFdBQW1CLEVBQUUsRUFBRTtJQUN4QyxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRWpGLG1FQUFtRTtJQUNuRSx1REFBdUQ7SUFFdkQsUUFBUSxXQUFXLEVBQUU7UUFDckIsS0FBSyxNQUFNO1lBQ1YsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEIsS0FBSyxnQkFBZ0I7WUFDcEIsT0FBTyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM3QixLQUFLLGdCQUFnQjtZQUNwQixPQUFPLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QixLQUFLLGNBQWM7WUFDbEIsT0FBTyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUM5QixLQUFLLE1BQU07WUFDVixPQUFPLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3ZDLEtBQUssU0FBUztZQUNiLE9BQU8sQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pCLEtBQUssYUFBYTtZQUNqQixPQUFPLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxQixLQUFLLFFBQVE7WUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkQ7WUFDQyxNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksV0FBVyxhQUFhLENBQUMsQ0FBQztLQUN0RDtBQUNGLENBQUMsQ0FBQztBQUVGLGtCQUFlLFFBQVEsQ0FBQyJ9
|
25
ElectronClient/gui/KeymapConfig/utils/useCommandStatus.js
Normal file
25
ElectronClient/gui/KeymapConfig/utils/useCommandStatus.js
Normal file
@ -0,0 +1,25 @@
|
||||
'use strict';
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
const react_1 = require('react');
|
||||
const KeymapService_1 = require('../../../lib/services/KeymapService');
|
||||
const keymapService = KeymapService_1.default.instance();
|
||||
const useCommandStatus = () => {
|
||||
const [status, setStatus] = react_1.useState(() => keymapService.getCommandNames().reduce((accumulator, command) => {
|
||||
accumulator[command] = false;
|
||||
return accumulator;
|
||||
}, {}));
|
||||
const disableStatus = (commandName) => setStatus(prevStatus => (Object.assign(Object.assign({}, prevStatus), { [commandName]: false })));
|
||||
const enableStatus = (commandName) => setStatus(prevStatus => {
|
||||
// Falsify all the commands; Only one command should be truthy at any given time
|
||||
const newStatus = Object.keys(prevStatus).reduce((accumulator, command) => {
|
||||
accumulator[command] = false;
|
||||
return accumulator;
|
||||
}, {});
|
||||
// Make the appropriate command truthful
|
||||
newStatus[commandName] = true;
|
||||
return newStatus;
|
||||
});
|
||||
return [status, enableStatus, disableStatus];
|
||||
};
|
||||
exports.default = useCommandStatus;
|
||||
// # sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlQ29tbWFuZFN0YXR1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInVzZUNvbW1hbmRTdGF0dXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMsdUVBQWdFO0FBRWhFLE1BQU0sYUFBYSxHQUFHLHVCQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7QUFNL0MsTUFBTSxnQkFBZ0IsR0FBRyxHQUFrRixFQUFFO0lBQzVHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsZ0JBQVEsQ0FBZ0IsR0FBRyxFQUFFLENBQ3hELGFBQWEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUEwQixFQUFFLE9BQWUsRUFBRSxFQUFFO1FBQ3RGLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDN0IsT0FBTyxXQUFXLENBQUM7SUFDcEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUNOLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxDQUFDLFdBQW1CLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLGlDQUFNLFVBQVUsS0FBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssSUFBRyxDQUFDLENBQUM7SUFDbEgsTUFBTSxZQUFZLEdBQUcsQ0FBQyxXQUFtQixFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDcEUsZ0ZBQWdGO1FBQ2hGLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBMEIsRUFBRSxPQUFlLEVBQUUsRUFBRTtZQUNoRyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzdCLE9BQU8sV0FBVyxDQUFDO1FBQ3BCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVQLHdDQUF3QztRQUN4QyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzlCLE9BQU8sU0FBUyxDQUFDO0lBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUYsa0JBQWUsZ0JBQWdCLENBQUMifQ==
|
68
ElectronClient/gui/KeymapConfig/utils/useKeymap.js
Normal file
68
ElectronClient/gui/KeymapConfig/utils/useKeymap.js
Normal file
@ -0,0 +1,68 @@
|
||||
'use strict';
|
||||
const __awaiter = (this && this.__awaiter) || function(thisArg, _arguments, P, generator) {
|
||||
function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); }
|
||||
return new (P || (P = Promise))(function(resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator['throw'](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
const react_1 = require('react');
|
||||
const KeymapService_1 = require('../../../lib/services/KeymapService');
|
||||
const keymapService = KeymapService_1.default.instance();
|
||||
// This custom hook provides a synchronized snapshot of the keymap residing at KeymapService
|
||||
// All the logic regarding altering and interacting with the keymap is isolated from the components
|
||||
const useKeymap = () => {
|
||||
const [keymapItems, setKeymapItems] = react_1.useState(() => keymapService.getKeymapItems());
|
||||
const [keymapError, setKeymapError] = react_1.useState(null);
|
||||
const setAccelerator = (commandName, accelerator) => {
|
||||
setKeymapItems(prevKeymap => {
|
||||
const newKeymap = [...prevKeymap];
|
||||
newKeymap.find(item => item.command === commandName).accelerator = accelerator || null /* Disabled */;
|
||||
return newKeymap;
|
||||
});
|
||||
};
|
||||
const resetAccelerator = (commandName) => {
|
||||
const defaultAccelerator = keymapService.getDefaultAccelerator(commandName);
|
||||
setKeymapItems(prevKeymap => {
|
||||
const newKeymap = [...prevKeymap];
|
||||
newKeymap.find(item => item.command === commandName).accelerator = defaultAccelerator;
|
||||
return newKeymap;
|
||||
});
|
||||
};
|
||||
const overrideKeymapItems = (customKeymapItems) => {
|
||||
const oldKeymapItems = [...customKeymapItems];
|
||||
keymapService.initialize(); // Start with a fresh keymap
|
||||
try {
|
||||
// First, try to update the in-memory keymap of KeymapService
|
||||
// This function will throw if there are any issues with the new custom keymap
|
||||
keymapService.overrideKeymap(customKeymapItems);
|
||||
// Then, update the state with the data from KeymapService
|
||||
// Side-effect: Changes will also be saved to the disk
|
||||
setKeymapItems(keymapService.getKeymapItems());
|
||||
} catch (err) {
|
||||
// oldKeymapItems includes even the unchanged keymap items
|
||||
// However, it is not an issue because the logic accounts for such scenarios
|
||||
keymapService.overrideKeymap(oldKeymapItems);
|
||||
throw err;
|
||||
}
|
||||
};
|
||||
const exportCustomKeymap = (customKeymapPath) => __awaiter(void 0, void 0, void 0, function* () {
|
||||
// KeymapService is already synchronized automatically with the in-state keymap
|
||||
yield keymapService.saveCustomKeymap(customKeymapPath);
|
||||
});
|
||||
react_1.useEffect(() => {
|
||||
try {
|
||||
keymapService.overrideKeymap(keymapItems);
|
||||
keymapService.saveCustomKeymap();
|
||||
setKeymapError(null);
|
||||
} catch (err) {
|
||||
setKeymapError(err);
|
||||
}
|
||||
}, [keymapItems]);
|
||||
return [keymapItems, keymapError, overrideKeymapItems, exportCustomKeymap, setAccelerator, resetAccelerator];
|
||||
};
|
||||
exports.default = useKeymap;
|
||||
// # sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlS2V5bWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidXNlS2V5bWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsaUNBQTRDO0FBQzVDLHVFQUFnRjtBQUVoRixNQUFNLGFBQWEsR0FBRyx1QkFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBRS9DLDRGQUE0RjtBQUM1RixtR0FBbUc7QUFFbkcsTUFBTSxTQUFTLEdBQUcsR0FPaEIsRUFBRTtJQUNILE1BQU0sQ0FBQyxXQUFXLEVBQUUsY0FBYyxDQUFDLEdBQUcsZ0JBQVEsQ0FBZSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNuRyxNQUFNLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxHQUFHLGdCQUFRLENBQVEsSUFBSSxDQUFDLENBQUM7SUFFNUQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxXQUFtQixFQUFFLFdBQW1CLEVBQUUsRUFBRTtRQUNuRSxjQUFjLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDM0IsTUFBTSxTQUFTLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1lBRWxDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsQ0FBQyxDQUFDLFdBQVcsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUN0RyxPQUFPLFNBQVMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUVGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxXQUFtQixFQUFFLEVBQUU7UUFDaEQsTUFBTSxrQkFBa0IsR0FBRyxhQUFhLENBQUMscUJBQXFCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzNCLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQztZQUVsQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLENBQUMsQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLENBQUM7WUFDdEYsT0FBTyxTQUFTLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7SUFFRixNQUFNLG1CQUFtQixHQUFHLENBQUMsaUJBQStCLEVBQUUsRUFBRTtRQUMvRCxNQUFNLGNBQWMsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsQ0FBQztRQUM5QyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFFeEQsSUFBSTtZQUNILDZEQUE2RDtZQUM3RCw4RUFBOEU7WUFDOUUsYUFBYSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ2hELDBEQUEwRDtZQUMxRCxzREFBc0Q7WUFDdEQsY0FBYyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1NBQy9DO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDYiwwREFBMEQ7WUFDMUQsNEVBQTRFO1lBQzVFLGFBQWEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDN0MsTUFBTSxHQUFHLENBQUM7U0FDVjtJQUNGLENBQUMsQ0FBQztJQUVGLE1BQU0sa0JBQWtCLEdBQUcsQ0FBTyxnQkFBd0IsRUFBRSxFQUFFO1FBQzdELCtFQUErRTtRQUMvRSxNQUFNLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3hELENBQUMsQ0FBQSxDQUFDO0lBRUYsaUJBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDZCxJQUFJO1lBQ0gsYUFBYSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMxQyxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNqQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDckI7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNiLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwQjtJQUNGLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFbEIsT0FBTyxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDOUcsQ0FBQyxDQUFDO0FBRUYsa0JBQWUsU0FBUyxDQUFDIn0=
|
@ -63,7 +63,7 @@ function useStyle() {
|
||||
|
||||
function useRestartOnDone(upgradeResult:SyncTargetUpgradeResult) {
|
||||
useEffect(function() {
|
||||
if (upgradeResult.done) {
|
||||
if (upgradeResult.done && !upgradeResult.error) {
|
||||
bridge().restart();
|
||||
}
|
||||
}, [upgradeResult.done]);
|
||||
|
2
ElectronClient/package-lock.json
generated
2
ElectronClient/package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "Joplin",
|
||||
"version": "1.0.235",
|
||||
"version": "1.0.237",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "Joplin",
|
||||
"version": "1.0.235",
|
||||
"version": "1.0.237",
|
||||
"description": "Joplin for Desktop",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
@ -20,15 +20,15 @@ Three types of applications are available: for the **desktop** (Windows, macOS a
|
||||
|
||||
Operating System | Download | Alternative
|
||||
-----------------|--------|-------------------
|
||||
Windows (32 and 64-bit) | <a href='https://github.com/laurent22/joplin/releases/download/v1.0.227/Joplin-Setup-1.0.227.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.0.227/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.0.227/Joplin-1.0.227.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a> | You can also use Homebrew (unsupported): `brew cask install joplin`
|
||||
Linux | <a href='https://github.com/laurent22/joplin/releases/download/v1.0.227/Joplin-1.0.227.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a> | An Arch Linux package (unsupported) [is also available](#terminal-application).<br><br>If it works with your distribution (it has been tested on Ubuntu, Fedora, and Mint; the desktop environments supported are GNOME, KDE, Xfce, MATE, LXQT, LXDE, Unity, Cinnamon, Deepin and Pantheon), the recommended way is to use this script as it will handle the desktop icon too:<br><br> `wget -O - https://raw.githubusercontent.com/laurent22/joplin/master/Joplin_install_and_update.sh \| bash`
|
||||
Windows (32 and 64-bit) | <a href='https://github.com/laurent22/joplin/releases/download/v1.0.233/Joplin-Setup-1.0.233.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.0.233/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.0.233/Joplin-1.0.233.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a> | You can also use Homebrew (unsupported): `brew cask install joplin`
|
||||
Linux | <a href='https://github.com/laurent22/joplin/releases/download/v1.0.233/Joplin-1.0.233.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a> | An Arch Linux package (unsupported) [is also available](#terminal-application).<br><br>If it works with your distribution (it has been tested on Ubuntu, Fedora, and Mint; the desktop environments supported are GNOME, KDE, Xfce, MATE, LXQT, LXDE, Unity, Cinnamon, Deepin and Pantheon), the recommended way is to use this script as it will handle the desktop icon too:<br><br> `wget -O - https://raw.githubusercontent.com/laurent22/joplin/master/Joplin_install_and_update.sh \| bash`
|
||||
|
||||
## 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.0.337/joplin-v1.0.337.apk) [32-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.0.337/joplin-v1.0.337-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.0.338/joplin-v1.0.338.apk) [32-bit](https://github.com/laurent22/joplin-android/releases/download/android-v1.0.338/joplin-v1.0.338-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
|
||||
|
@ -125,8 +125,8 @@ android {
|
||||
applicationId "net.cozic.joplin"
|
||||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
versionCode 2097573
|
||||
versionName "1.0.337"
|
||||
versionCode 2097574
|
||||
versionName "1.0.338"
|
||||
ndk {
|
||||
abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
|
||||
}
|
||||
|
@ -327,22 +327,15 @@ class OneDriveApi {
|
||||
}
|
||||
|
||||
async execAccountPropertiesRequest() {
|
||||
const response = await shim.fetch('https://graph.microsoft.com/v1.0/me/drive', {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Authorization': this.token(),
|
||||
},
|
||||
});
|
||||
|
||||
if (!response.ok) {
|
||||
const text = await response.text();
|
||||
throw new Error(`Could not retrieve account details (drive ID, Account type): ${response.status}: ${response.statusText}: ${text}`);
|
||||
} else {
|
||||
try {
|
||||
const response = await this.exec('GET','https://graph.microsoft.com/v1.0/me/drive');
|
||||
const data = await response.json();
|
||||
const accountProperties = { accountType: data.driveType, driveId: data.id };
|
||||
return accountProperties;
|
||||
} catch (error) {
|
||||
throw new Error(`Could not retrieve account details (drive ID, Account type. Error code: ${error.code}, Error message: ${error.message}`);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
async execJson(method, path, query, data) {
|
||||
|
@ -15,10 +15,14 @@ export default function useSyncTargetUpgrade():SyncTargetUpgradeResult {
|
||||
});
|
||||
|
||||
async function upgradeSyncTarget() {
|
||||
reg.logger().info('useSyncTargetUpgrade: Starting process...');
|
||||
|
||||
let error = null;
|
||||
try {
|
||||
reg.logger().info('useSyncTargetUpgrade: Acquire synchronizer...');
|
||||
const synchronizer = await reg.syncTarget().synchronizer();
|
||||
|
||||
reg.logger().info('useSyncTargetUpgrade: Create migration handler...');
|
||||
const migrationHandler = new MigrationHandler(
|
||||
synchronizer.api(),
|
||||
synchronizer.lockHandler(),
|
||||
@ -26,11 +30,14 @@ export default function useSyncTargetUpgrade():SyncTargetUpgradeResult {
|
||||
Setting.value('clientId')
|
||||
);
|
||||
|
||||
reg.logger().info('useSyncTargetUpgrade: Start upgrade...');
|
||||
await migrationHandler.upgrade();
|
||||
} catch (e) {
|
||||
error = e;
|
||||
}
|
||||
|
||||
reg.logger().info('useSyncTargetUpgrade: Error:', error);
|
||||
|
||||
if (!error) {
|
||||
Setting.setValue('sync.upgradeState', Setting.SYNC_UPGRADE_STATE_IDLE);
|
||||
await Setting.saveAll();
|
||||
|
@ -351,9 +351,85 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
</ul>
|
||||
</div>
|
||||
<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.0.231">v1.0.231</a> - 2020-07-24T17:21:53Z<a name="v1-0-231-https-github-com-laurent22-joplin-releases-tag-v1-0-231-2020-07-24t17-21-53z" href="#v1-0-231-https-github-com-laurent22-joplin-releases-tag-v1-0-231-2020-07-24t17-21-53z" class="heading-anchor">🔗</a></h2>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.235">v1.0.235</a> - 2020-08-18T22:08:01Z<a name="v1-0-235-https-github-com-laurent22-joplin-releases-tag-v1-0-235-2020-08-18t22-08-01z" href="#v1-0-235-https-github-com-laurent22-joplin-releases-tag-v1-0-235-2020-08-18t22-08-01z" class="heading-anchor">🔗</a></h2>
|
||||
<p>Important: This pre-release will ask you to upgrade your sync target and, once it is done, only the latest clients will be able to sync with this sync target. Currently that includes the desktop app (v1.0.234+) and Android app (v1.0.337+). It means if you are using these two clients you'll be fine. However if you are using the iOS or CLI clients you might want to wait till these clients are updated. Any issue with the sync target upgrade, please post on the forum.</p>
|
||||
<p>This version also includes an update to the search engine and as a result starting the app the first might be SLOW, as the search engine indexes all your notes. It might take from a few seconds to several minutes depending on how large your note collection is</p>
|
||||
<ul>
|
||||
<li>New: Add mechanism to lock and upgrade sync targets (<a href="https://github.com/laurent22/joplin/issues/3524">#3524</a>)</li>
|
||||
<li>New: Add version info to error screen</li>
|
||||
<li>New: Added KeymapService to manage keyboard shortcuts (<a href="https://github.com/laurent22/joplin/issues/3252">#3252</a> by Anjula Karunarathne)</li>
|
||||
<li>New: Added attach file to menu bar (<a href="https://github.com/laurent22/joplin/issues/3540">#3540</a> by <a href="https://github.com/R3dError">@R3dError</a>)</li>
|
||||
<li>New: Add search filters (<a href="https://github.com/laurent22/joplin/issues/3213">#3213</a>) (<a href="https://github.com/laurent22/joplin/issues/1877">#1877</a> by Naveen M V)</li>
|
||||
<li>Security: Apply latest package security updates</li>
|
||||
<li>Improved: Add support for OneDrive for Business (<a href="https://github.com/laurent22/joplin/issues/3433">#3433</a>) (<a href="https://github.com/laurent22/joplin/issues/1266">#1266</a> by <a href="https://github.com/jonath92">@jonath92</a>)</li>
|
||||
<li>Improved: Codemirror: clean up list indent code (<a href="https://github.com/laurent22/joplin/issues/3581">#3581</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Enable CodeMirror keybindings (<a href="https://github.com/laurent22/joplin/issues/3545">#3545</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Fix AppImage Icon (<a href="https://github.com/laurent22/joplin/issues/3570">#3570</a>) (<a href="https://github.com/laurent22/joplin/issues/3529">#3529</a> by <a href="https://github.com/Jesssullivan">@Jesssullivan</a>)</li>
|
||||
<li>Improved: Hide completed to-dos in GotoAnything (<a href="https://github.com/laurent22/joplin/issues/3580">#3580</a>)</li>
|
||||
<li>Improved: Implement scroll-past-end on CodeMirror editor (<a href="https://github.com/laurent22/joplin/issues/3589">#3589</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Show full folder name in mouse-over pop-up text (<a href="https://github.com/laurent22/joplin/issues/3590">#3590</a>) (<a href="https://github.com/laurent22/joplin/issues/3569">#3569</a> by Allan Jacquet-Cretides)</li>
|
||||
<li>Improved: Toggle Editor rather than setting split mode on search (<a href="https://github.com/laurent22/joplin/issues/3561">#3561</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Fixed copy, cut and paste in Rich Text editor (<a href="https://github.com/laurent22/joplin/issues/3565">#3565</a>)</li>
|
||||
<li>Fixed: Fixed scrolling issue when editing while searching in CodeMirror (<a href="https://github.com/laurent22/joplin/issues/3593">#3593</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Fixed sync fetching issue (<a href="https://github.com/laurent22/joplin/issues/3599">#3599</a>) (<a href="https://github.com/laurent22/joplin/issues/3591">#3591</a> by <a href="https://github.com/alexchee">@alexchee</a>)</li>
|
||||
<li>Fixed: Fixed vim mode issue where status bar was not visible (<a href="https://github.com/laurent22/joplin/issues/3606">#3606</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Modify the CodeMirror linter plugin to fix katex (<a href="https://github.com/laurent22/joplin/issues/3582">#3582</a>) (<a href="https://github.com/laurent22/joplin/issues/3560">#3560</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.234">v1.0.234</a> - 2020-08-17T23:13:02Z<a name="v1-0-234-https-github-com-laurent22-joplin-releases-tag-v1-0-234-2020-08-17t23-13-02z" href="#v1-0-234-https-github-com-laurent22-joplin-releases-tag-v1-0-234-2020-08-17t23-13-02z" class="heading-anchor">🔗</a></h2>
|
||||
<p>Important: This pre-release will ask you to upgrade your sync target and, once it is done, only the latest clients will be able to sync with this sync target. Currently that includes the desktop app (v1.0.234+) and Android app (v1.0.337+). It means if you are using these two clients you'll be fine. However if you are using the iOS or CLI clients you might want to wait till these clients are updated. Any issue with the sync target upgrade, please post on the forum.</p>
|
||||
<p>This version also includes an update to the search engine and as a result starting the app the first might be SLOW, as the search engine indexes all your notes. It might take from a few seconds to several minutes depending on how large your note collection is.</p>
|
||||
<ul>
|
||||
<li>New: Add mechanism to lock and upgrade sync targets (<a href="https://github.com/laurent22/joplin/issues/3524">#3524</a>)</li>
|
||||
<li>New: Add support for media player for video and audio files</li>
|
||||
<li>New: Add version info to error screen</li>
|
||||
<li>New: Added KeymapService to manage keyboard shortcuts (<a href="https://github.com/laurent22/joplin/issues/3252">#3252</a> by Anjula Karunarathne)</li>
|
||||
<li>New: Added attach file to menu bar (<a href="https://github.com/laurent22/joplin/issues/3540">#3540</a> by <a href="https://github.com/R3dError">@R3dError</a>)</li>
|
||||
<li>New: Add search filters (<a href="https://github.com/laurent22/joplin/issues/3213">#3213</a>) (<a href="https://github.com/laurent22/joplin/issues/1877">#1877</a> by Naveen M V)</li>
|
||||
<li>Security: Apply latest package security updates</li>
|
||||
<li>Improved: Add support for OneDrive for Business (<a href="https://github.com/laurent22/joplin/issues/3433">#3433</a>) (<a href="https://github.com/laurent22/joplin/issues/1266">#1266</a> by <a href="https://github.com/jonath92">@jonath92</a>)</li>
|
||||
<li>Improved: Codemirror: clean up list indent code (<a href="https://github.com/laurent22/joplin/issues/3581">#3581</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Enable CodeMirror keybindings (<a href="https://github.com/laurent22/joplin/issues/3545">#3545</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Fix AppImage Icon (<a href="https://github.com/laurent22/joplin/issues/3570">#3570</a>) (<a href="https://github.com/laurent22/joplin/issues/3529">#3529</a> by <a href="https://github.com/Jesssullivan">@Jesssullivan</a>)</li>
|
||||
<li>Improved: Hide completed to-dos in GotoAnything (<a href="https://github.com/laurent22/joplin/issues/3580">#3580</a>)</li>
|
||||
<li>Improved: Implement scroll-past-end on CodeMirror editor (<a href="https://github.com/laurent22/joplin/issues/3589">#3589</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Show full folder name in mouse-over pop-up text (<a href="https://github.com/laurent22/joplin/issues/3590">#3590</a>) (<a href="https://github.com/laurent22/joplin/issues/3569">#3569</a> by Allan Jacquet-Cretides)</li>
|
||||
<li>Improved: Toggle Editor rather than setting split mode on search (<a href="https://github.com/laurent22/joplin/issues/3561">#3561</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Fixed copy, cut and paste in Rich Text editor (<a href="https://github.com/laurent22/joplin/issues/3565">#3565</a>)</li>
|
||||
<li>Fixed: Fixed scrolling issue when editing while searching in CodeMirror (<a href="https://github.com/laurent22/joplin/issues/3593">#3593</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Fixed sync fetching issue (<a href="https://github.com/laurent22/joplin/issues/3599">#3599</a>) (<a href="https://github.com/laurent22/joplin/issues/3591">#3591</a> by <a href="https://github.com/alexchee">@alexchee</a>)</li>
|
||||
<li>Fixed: Fixed vim mode issue where status bar was not visible (<a href="https://github.com/laurent22/joplin/issues/3606">#3606</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Modify the CodeMirror linter plugin to fix katex (<a href="https://github.com/laurent22/joplin/issues/3582">#3582</a>) (<a href="https://github.com/laurent22/joplin/issues/3560">#3560</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.233">v1.0.233</a> - 2020-08-01T14:51:15Z<a name="v1-0-233-https-github-com-laurent22-joplin-releases-tag-v1-0-233-2020-08-01t14-51-15z" href="#v1-0-233-https-github-com-laurent22-joplin-releases-tag-v1-0-233-2020-08-01t14-51-15z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: Add support for AWS S3 synchronisation (Beta) (<a href="https://github.com/laurent22/joplin/issues/2815">#2815</a> by <a href="https://github.com/alexchee">@alexchee</a>)</li>
|
||||
<li>Security: Fixed a path traversal vulnerability in clipper server API that could allow an attacker to read or write an arbitrary file (CVE-2020-15844). Vulnerability found by <a href="mailto:ben@mayhem.sg">Benjamin Harris</a>.</li>
|
||||
<li>Improved: Improved GotoAnything speed and made it safer</li>
|
||||
<li>Improved: Enable searching in editor rather than the viewer for CodeMirror (<a href="https://github.com/laurent22/joplin/issues/3360">#3360</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Enforce that whitespace check for unindent checks the begining of a (<a href="https://github.com/laurent22/joplin/issues/3515">#3515</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Load more CodeMirror modes for syntax highlighting (<a href="https://github.com/laurent22/joplin/issues/3401">#3401</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Improved: Split Codemirror setOptions into different effects (<a href="https://github.com/laurent22/joplin/issues/3522">#3522</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Fix filename when exporting notebook as Markdown (<a href="https://github.com/laurent22/joplin/issues/3473">#3473</a>)</li>
|
||||
<li>Fixed: Fixed alarms on macOS</li>
|
||||
<li>Fixed: Improve Markdown rendering in CodeMirror, in particular for math expressions (<a href="https://github.com/laurent22/joplin/issues/3448">#3448</a>) (<a href="https://github.com/laurent22/joplin/issues/3440">#3440</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Crash when applying tags to multiple notes from within another tag (<a href="https://github.com/laurent22/joplin/issues/3481">#3481</a>)</li>
|
||||
<li>Fixed: Fixed regression when moving note to notebook from menu (<a href="https://github.com/laurent22/joplin/issues/3482">#3482</a>)</li>
|
||||
<li>Fixed: Editor window was no longer being resized with the main window (<a href="https://github.com/laurent22/joplin/issues/3503">#3503</a>)</li>
|
||||
<li>Fixed: Fixed attachments being out of order when importing Enex file</li>
|
||||
<li>Fixed: Fixed save issue in Rich Text editor when making a change to a note and quickly switching to a different notebook</li>
|
||||
<li>Fixed: Fixed style caching (<a href="https://github.com/laurent22/joplin/issues/3449">#3449</a>)</li>
|
||||
<li>Fixed: In some cases, changes made to an attachment would not be saved. Also added banner to show that an attachment is being edited (<a href="https://github.com/laurent22/joplin/issues/3407">#3407</a>)</li>
|
||||
<li>Fixed: Note links would be broken after saving a note in Rich Text editor (<a href="https://github.com/laurent22/joplin/issues/3510">#3510</a>)</li>
|
||||
<li>Fixed: Regression: Fix sort tags alphabetically in side-menu (<a href="https://github.com/laurent22/joplin/issues/3489">#3489</a> by Vaidotas Šimkus)</li>
|
||||
<li>Fixed: Regression: Fixed adding a new sub-notebook to a notebook</li>
|
||||
<li>Fixed: Revealing file in Windows did not work (<a href="https://github.com/laurent22/joplin/issues/3366">#3366</a>)</li>
|
||||
<li>Fixed: Undoing changes multiple time on an existing note could result in a blank note (<a href="https://github.com/laurent22/joplin/issues/3534">#3534</a>)</li>
|
||||
<li>Fixed: Fixed potential crash when notebook does not have a title</li>
|
||||
<li>Fixed: Fixed toolbar button state when going from setting screen to main screen</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.232">v1.0.232</a> - 2020-07-28T22:34:40Z<a name="v1-0-232-https-github-com-laurent22-joplin-releases-tag-v1-0-232-2020-07-28t22-34-40z" href="#v1-0-232-https-github-com-laurent22-joplin-releases-tag-v1-0-232-2020-07-28t22-34-40z" class="heading-anchor">🔗</a></h2>
|
||||
<p>This release is to remove the hierarchical/nested tags feature for now, as it has a performance issue.</p>
|
||||
<ul>
|
||||
<li>New: Added support for hierarchical/nested tags (<a href="https://github.com/laurent22/joplin/issues/2572">#2572</a> by Vaidotas Šimkus)</li>
|
||||
<li>New: Add support for AWS S3 synchronisation (Beta) (<a href="https://github.com/laurent22/joplin/issues/2815">#2815</a> by <a href="https://github.com/alexchee">@alexchee</a>)</li>
|
||||
<li>Security: Fixed a path traversal vulnerability in clipper server API that could allow an attacker to read or write an arbitrary file (CVE-2020-15844). Vulnerability found by <a href="mailto:ben@mayhem.sg">Benjamin Harris</a>.</li>
|
||||
<li>Improved: Improved GotoAnything speed and made it safer</li>
|
||||
@ -378,16 +454,6 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
<li>Fixed: Revealing file in Windows did not work (<a href="https://github.com/laurent22/joplin/issues/3366">#3366</a>)</li>
|
||||
<li>Fixed: Undoing changes multiple time on an existing note could result in a blank note (<a href="https://github.com/laurent22/joplin/issues/3534">#3534</a>)</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.229">v1.0.229</a> - 2020-07-14T15:15:18Z<a name="v1-0-229-https-github-com-laurent22-joplin-releases-tag-v1-0-229-2020-07-14t15-15-18z" href="#v1-0-229-https-github-com-laurent22-joplin-releases-tag-v1-0-229-2020-07-14t15-15-18z" class="heading-anchor">🔗</a></h2>
|
||||
<p>Fixed a few regressions related to the recent command refactoring.</p>
|
||||
<ul>
|
||||
<li>New: Added support for hierarchical/nested tags (<a href="https://github.com/laurent22/joplin/issues/2572">#2572</a> by Vaidotas Šimkus)</li>
|
||||
<li>Fixed: Fix filename when exporting notebook as Markdown (<a href="https://github.com/laurent22/joplin/issues/3473">#3473</a>)</li>
|
||||
<li>Fixed: Fixed alarms on macOS</li>
|
||||
<li>Fixed: Improve Markdown rendering in CodeMirror, in particular for math expressions (<a href="https://github.com/laurent22/joplin/issues/3448">#3448</a>) (<a href="https://github.com/laurent22/joplin/issues/3440">#3440</a> by <a href="https://github.com/CalebJohn">@CalebJohn</a>)</li>
|
||||
<li>Fixed: Crash when applying tags to multiple notes from within another tag (<a href="https://github.com/laurent22/joplin/issues/3481">#3481</a>)</li>
|
||||
<li>Fixed: Fixed regression when moving note to notebook from menu (<a href="https://github.com/laurent22/joplin/issues/3482">#3482</a>)</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.227">v1.0.227</a> - 2020-07-07T20:44:54Z<a name="v1-0-227-https-github-com-laurent22-joplin-releases-tag-v1-0-227-2020-07-07t20-44-54z" href="#v1-0-227-https-github-com-laurent22-joplin-releases-tag-v1-0-227-2020-07-07t20-44-54z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: Add approximate reading time to note statistics (<a href="https://github.com/laurent22/joplin/issues/3373">#3373</a> by <a href="https://github.com/cadolphs">@cadolphs</a>)</li>
|
||||
@ -1517,7 +1583,7 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.119">v1.0.119</a> - 2018-12-18T12:40:22Z<a name="v1-0-119-https-github-com-laurent22-joplin-releases-tag-v1-0-119-2018-12-18t12-40-22z" href="#v1-0-119-https-github-com-laurent22-joplin-releases-tag-v1-0-119-2018-12-18t12-40-22z" class="heading-anchor">🔗</a></h2>
|
||||
<p>Important: This release might be slow on startup due to the need to index all the notes, especially if you have many of them with lots of content. The best is simply to wait for it even if it takes several minutes. This is just a one off and afterwards startup time will be the same as before.</p>
|
||||
<ul>
|
||||
<li>New: Fast full text search engine. Works with multiple terms, support for prefixes, can restrict search to either note title or body. See <a href="https://joplinapp.org/#searching">https://joplinapp.org/#searching</a> for more info.</li>
|
||||
<li>New: Fast full text search engine. Works with multiple terms, support for prefixes, can restrict search to either note title or body. See <a href="https://joplin.cozic.net/#searching">https://joplin.cozic.net/#searching</a> for more info.</li>
|
||||
<li>New: Search within current note (Ctrl+F).</li>
|
||||
<li>New: Add separate editor font size option (<a href="https://github.com/laurent22/joplin/issues/1027">#1027</a>)</li>
|
||||
<li>Changed: Changed global search shortcut to F6.</li>
|
||||
@ -1530,7 +1596,7 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.118">v1.0.118</a> - 2019-01-11T08:34:13Z<a name="v1-0-118-https-github-com-laurent22-joplin-releases-tag-v1-0-118-2019-01-11t08-34-13z" href="#v1-0-118-https-github-com-laurent22-joplin-releases-tag-v1-0-118-2019-01-11t08-34-13z" class="heading-anchor">🔗</a></h2>
|
||||
<p>Important: This release might be slow on startup due to the need to index all the notes, especially if you have many of them with lots of content. The best is simply to wait for it even if it takes several minutes. This is just a one off and afterwards startup time will be the same as before.</p>
|
||||
<ul>
|
||||
<li>New: Fast full text search engine. Works with multiple terms, support for prefixes, can restrict search to either note title or body. See <a href="https://joplinapp.org/#searching">https://joplinapp.org/#searching</a> for more info.</li>
|
||||
<li>New: Fast full text search engine. Works with multiple terms, support for prefixes, can restrict search to either note title or body. See <a href="https://joplin.cozic.net/#searching">https://joplin.cozic.net/#searching</a> for more info.</li>
|
||||
<li>New: Search within current note (Ctrl+F).</li>
|
||||
<li>New: Add separate editor font size option (<a href="https://github.com/laurent22/joplin/issues/1027">#1027</a>)</li>
|
||||
<li>Changed: Changed global search shortcut to F6.</li>
|
||||
@ -1731,7 +1797,7 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.93">v1.0.93</a> - 2018-05-14T11:36:01Z<a name="v1-0-93-https-github-com-laurent22-joplin-releases-tag-v1-0-93-2018-05-14t11-36-01z" href="#v1-0-93-https-github-com-laurent22-joplin-releases-tag-v1-0-93-2018-05-14t11-36-01z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: A portable version is now available. To install it simply copy the file "JoplinPortable.exe" to your USB device. See the documentation for more information - <a href="https://joplinapp.org/#desktop-applications">https://joplinapp.org/#desktop-applications</a></li>
|
||||
<li>New: A portable version is now available. To install it simply copy the file "JoplinPortable.exe" to your USB device. See the documentation for more information - <a href="https://joplin.cozic.net/#desktop-applications">https://joplin.cozic.net/#desktop-applications</a></li>
|
||||
<li>Improved: Made import of ENEX files more robust and accurate</li>
|
||||
<li>Improved: Auto-update process should be more reliable.</li>
|
||||
<li>Fixed: Made sync-after-save interval longer to made synchronisations less frequent.</li>
|
||||
@ -1748,7 +1814,7 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog.md
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.89">v1.0.89</a> - 2018-05-09T13:05:05Z<a name="v1-0-89-https-github-com-laurent22-joplin-releases-tag-v1-0-89-2018-05-09t13-05-05z" href="#v1-0-89-https-github-com-laurent22-joplin-releases-tag-v1-0-89-2018-05-09t13-05-05z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: Resolves <a href="https://github.com/laurent22/joplin/issues/122">#122</a>: Added support for sub-notebooks. Please see doc for more info: <a href="https://joplinapp.org/#sub-notebooks">https://joplinapp.org/#sub-notebooks</a></li>
|
||||
<li>New: Resolves <a href="https://github.com/laurent22/joplin/issues/122">#122</a>: Added support for sub-notebooks. Please see doc for more info: <a href="https://joplin.cozic.net/#sub-notebooks">https://joplin.cozic.net/#sub-notebooks</a></li>
|
||||
<li>Improved: Export/Import links to notes</li>
|
||||
<li>Fixes <a href="https://github.com/laurent22/joplin/issues/480">#480</a>: Ignore invalid flag automatically passed by macOS</li>
|
||||
<li>Fixes <a href="https://github.com/laurent22/joplin/issues/61">#61</a>: Handle path that ends with slash for file system sync</li>
|
||||
|
@ -351,6 +351,13 @@ https://github.com/laurent22/joplin/blob/master/readme/changelog_cli.md
|
||||
</ul>
|
||||
</div>
|
||||
<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.0.166">cli-v1.0.166</a> - 2020-08-02T14:03:26Z<a name="cli-v1-0-166-https-github-com-laurent22-joplin-releases-tag-cli-v1-0-166-2020-08-02t14-03-26z" href="#cli-v1-0-166-https-github-com-laurent22-joplin-releases-tag-cli-v1-0-166-2020-08-02t14-03-26z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: Add support for AWS S3 synchronisation (Beta) (#2815 by <a href="https://github.com/alexchee">@alexchee</a>)</li>
|
||||
<li>Fixed: Desktop-only scripts were incorrectly being loaded in CLI server tool (#3548)</li>
|
||||
<li>Fixed: Fix filename when exporting notebook as Markdown (#3473)</li>
|
||||
<li>Fixed: Fixed attachments being out of order when importing Enex file</li>
|
||||
</ul>
|
||||
<h2><a href="https://github.com/laurent22/joplin/releases/tag/cli-v1.0.165">cli-v1.0.165</a> - 2020-07-10T18:51:42Z<a name="cli-v1-0-165-https-github-com-laurent22-joplin-releases-tag-cli-v1-0-165-2020-07-10t18-51-42z" href="#cli-v1-0-165-https-github-com-laurent22-joplin-releases-tag-cli-v1-0-165-2020-07-10t18-51-42z" class="heading-anchor">🔗</a></h2>
|
||||
<ul>
|
||||
<li>New: Translation: Add bahasa indonesia (id_ID.po) (#3246 by <a href="https://github.com/ffadilaputra">@ffadilaputra</a>)</li>
|
||||
|
@ -371,17 +371,17 @@ https://github.com/laurent22/joplin/blob/master/README.md
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Windows (32 and 64-bit)</td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.227/Joplin-Setup-1.0.227.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.0.227/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 "JoplinProfile" next to the executable file.</td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.233/Joplin-Setup-1.0.233.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.0.233/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 "JoplinProfile" next to the executable file.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>macOS</td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.227/Joplin-1.0.227.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a></td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.233/Joplin-1.0.233.dmg'><img alt='Get it on macOS' width="134px" src='https://joplinapp.org/images/BadgeMacOS.png'/></a></td>
|
||||
<td>You can also use Homebrew (unsupported): <code>brew cask install joplin</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Linux</td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.227/Joplin-1.0.227.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a></td>
|
||||
<td><a href='https://github.com/laurent22/joplin/releases/download/v1.0.233/Joplin-1.0.233.AppImage'><img alt='Get it on Linux' width="134px" src='https://joplinapp.org/images/BadgeLinux.png'/></a></td>
|
||||
<td>An Arch Linux package (unsupported) <a href="#terminal-application">is also available</a>.<br><br>If it works with your distribution (it has been tested on Ubuntu, Fedora, and Mint; the desktop environments supported are GNOME, KDE, Xfce, MATE, LXQT, LXDE, Unity, Cinnamon, Deepin and Pantheon), the recommended way is to use this script as it will handle the desktop icon too:<br><br> <code>wget -O - https://raw.githubusercontent.com/laurent22/joplin/master/Joplin_install_and_update.sh | bash</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@ -399,7 +399,7 @@ https://github.com/laurent22/joplin/blob/master/README.md
|
||||
<tr>
|
||||
<td>Android</td>
|
||||
<td><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></td>
|
||||
<td>or download the APK file: <a href="https://github.com/laurent22/joplin-android/releases/download/android-v1.0.333/joplin-v1.0.333.apk">64-bit</a> <a href="https://github.com/laurent22/joplin-android/releases/download/android-v1.0.333/joplin-v1.0.333-32bit.apk">32-bit</a></td>
|
||||
<td>or download the APK file: <a href="https://github.com/laurent22/joplin-android/releases/download/android-v1.0.336/joplin-v1.0.336.apk">64-bit</a> <a href="https://github.com/laurent22/joplin-android/releases/download/android-v1.0.336/joplin-v1.0.336-32bit.apk">32-bit</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>iOS</td>
|
||||
|
@ -361,15 +361,15 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Total Windows downloads</td>
|
||||
<td>914,303</td>
|
||||
<td>960,363</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Total macOs downloads</td>
|
||||
<td>352,705</td>
|
||||
<td>370,685</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Total Linux downloads</td>
|
||||
<td>256,195</td>
|
||||
<td>267,570</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Windows %</td>
|
||||
@ -398,76 +398,92 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.231">v1.0.231</a></td>
|
||||
<td>2020-07-24T17:21:53Z</td>
|
||||
<td>23</td>
|
||||
<td>10</td>
|
||||
<td>9</td>
|
||||
<td>42</td>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.235">v1.0.235</a></td>
|
||||
<td>2020-08-18T22:08:01Z</td>
|
||||
<td>302</td>
|
||||
<td>66</td>
|
||||
<td>55</td>
|
||||
<td>423</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.229">v1.0.229</a></td>
|
||||
<td>2020-07-14T15:15:18Z</td>
|
||||
<td>829</td>
|
||||
<td>323</td>
|
||||
<td>452</td>
|
||||
<td>1,604</td>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.234">v1.0.234</a></td>
|
||||
<td>2020-08-17T23:13:02Z</td>
|
||||
<td>288</td>
|
||||
<td>76</td>
|
||||
<td>71</td>
|
||||
<td>435</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.233">v1.0.233</a></td>
|
||||
<td>2020-08-01T14:51:15Z</td>
|
||||
<td>24,632</td>
|
||||
<td>11,969</td>
|
||||
<td>5,946</td>
|
||||
<td>42,547</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.232">v1.0.232</a></td>
|
||||
<td>2020-07-28T22:34:40Z</td>
|
||||
<td>608</td>
|
||||
<td>185</td>
|
||||
<td>161</td>
|
||||
<td>954</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.227">v1.0.227</a></td>
|
||||
<td>2020-07-07T20:44:54Z</td>
|
||||
<td>19,611</td>
|
||||
<td>9,341</td>
|
||||
<td>4,170</td>
|
||||
<td>33,122</td>
|
||||
<td>39,786</td>
|
||||
<td>15,130</td>
|
||||
<td>9,547</td>
|
||||
<td>64,463</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.226">v1.0.226</a></td>
|
||||
<td>2020-07-04T10:21:26Z</td>
|
||||
<td>4,742</td>
|
||||
<td>2,174</td>
|
||||
<td>641</td>
|
||||
<td>7,557</td>
|
||||
<td>4,763</td>
|
||||
<td>2,196</td>
|
||||
<td>671</td>
|
||||
<td>7,630</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.224">v1.0.224</a></td>
|
||||
<td>2020-06-20T22:26:08Z</td>
|
||||
<td>24,506</td>
|
||||
<td>10,883</td>
|
||||
<td>5,957</td>
|
||||
<td>41,346</td>
|
||||
<td>24,572</td>
|
||||
<td>10,919</td>
|
||||
<td>5,975</td>
|
||||
<td>41,466</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.223">v1.0.223</a></td>
|
||||
<td>2020-06-20T11:51:27Z</td>
|
||||
<td>143</td>
|
||||
<td>70</td>
|
||||
<td>59</td>
|
||||
<td>272</td>
|
||||
<td>151</td>
|
||||
<td>80</td>
|
||||
<td>63</td>
|
||||
<td>294</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.221">v1.0.221</a></td>
|
||||
<td>2020-06-20T01:44:20Z</td>
|
||||
<td>810</td>
|
||||
<td>163</td>
|
||||
<td>189</td>
|
||||
<td>1,162</td>
|
||||
<td>819</td>
|
||||
<td>171</td>
|
||||
<td>193</td>
|
||||
<td>1,183</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.220">v1.0.220</a></td>
|
||||
<td>2020-06-13T18:26:22Z</td>
|
||||
<td>31,271</td>
|
||||
<td>9,854</td>
|
||||
<td>6,383</td>
|
||||
<td>47,508</td>
|
||||
<td>31,394</td>
|
||||
<td>9,860</td>
|
||||
<td>6,392</td>
|
||||
<td>47,646</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.218">v1.0.218</a></td>
|
||||
<td>2020-06-07T10:43:34Z</td>
|
||||
<td>14,363</td>
|
||||
<td>6,919</td>
|
||||
<td>2,939</td>
|
||||
<td>24,221</td>
|
||||
<td>14,396</td>
|
||||
<td>6,926</td>
|
||||
<td>2,944</td>
|
||||
<td>24,266</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.217">v1.0.217</a></td>
|
||||
@ -480,26 +496,26 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.216">v1.0.216</a></td>
|
||||
<td>2020-05-24T14:21:01Z</td>
|
||||
<td>35,792</td>
|
||||
<td>14,170</td>
|
||||
<td>10,108</td>
|
||||
<td>60,070</td>
|
||||
<td>35,921</td>
|
||||
<td>14,191</td>
|
||||
<td>10,117</td>
|
||||
<td>60,229</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.214">v1.0.214</a></td>
|
||||
<td>2020-05-21T17:15:15Z</td>
|
||||
<td>6,346</td>
|
||||
<td>3,429</td>
|
||||
<td>6,358</td>
|
||||
<td>3,433</td>
|
||||
<td>755</td>
|
||||
<td>10,530</td>
|
||||
<td>10,546</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.212">v1.0.212</a></td>
|
||||
<td>2020-05-21T07:48:39Z</td>
|
||||
<td>193</td>
|
||||
<td>194</td>
|
||||
<td>58</td>
|
||||
<td>41</td>
|
||||
<td>292</td>
|
||||
<td>293</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.211">v1.0.211</a></td>
|
||||
@ -513,177 +529,177 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.209">v1.0.209</a></td>
|
||||
<td>2020-05-17T18:32:51Z</td>
|
||||
<td>1,383</td>
|
||||
<td>812</td>
|
||||
<td>141</td>
|
||||
<td>2,336</td>
|
||||
<td>818</td>
|
||||
<td>142</td>
|
||||
<td>2,343</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.207">v1.0.207</a></td>
|
||||
<td>2020-05-10T16:37:35Z</td>
|
||||
<td>1,167</td>
|
||||
<td>1,170</td>
|
||||
<td>254</td>
|
||||
<td>1,008</td>
|
||||
<td>2,429</td>
|
||||
<td>2,432</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.201">v1.0.201</a></td>
|
||||
<td>2020-04-15T22:55:13Z</td>
|
||||
<td>51,691</td>
|
||||
<td>19,997</td>
|
||||
<td>18,161</td>
|
||||
<td>89,849</td>
|
||||
<td>51,847</td>
|
||||
<td>20,010</td>
|
||||
<td>18,162</td>
|
||||
<td>90,019</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.200">v1.0.200</a></td>
|
||||
<td>2020-04-12T12:17:46Z</td>
|
||||
<td>9,534</td>
|
||||
<td>4,876</td>
|
||||
<td>1,893</td>
|
||||
<td>16,303</td>
|
||||
<td>4,878</td>
|
||||
<td>1,895</td>
|
||||
<td>16,307</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.199">v1.0.199</a></td>
|
||||
<td>2020-04-10T18:41:58Z</td>
|
||||
<td>19,177</td>
|
||||
<td>19,186</td>
|
||||
<td>5,872</td>
|
||||
<td>3,777</td>
|
||||
<td>28,826</td>
|
||||
<td>28,835</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.197">v1.0.197</a></td>
|
||||
<td>2020-03-30T17:21:22Z</td>
|
||||
<td>21,955</td>
|
||||
<td>9,477</td>
|
||||
<td>5,548</td>
|
||||
<td>36,980</td>
|
||||
<td>21,983</td>
|
||||
<td>9,485</td>
|
||||
<td>5,565</td>
|
||||
<td>37,033</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.195">v1.0.195</a></td>
|
||||
<td>2020-03-22T19:56:12Z</td>
|
||||
<td>18,836</td>
|
||||
<td>7,927</td>
|
||||
<td>4,493</td>
|
||||
<td>31,256</td>
|
||||
<td>18,840</td>
|
||||
<td>7,928</td>
|
||||
<td>4,498</td>
|
||||
<td>31,266</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.194">v1.0.194</a></td>
|
||||
<td>2020-03-14T00:00:32Z</td>
|
||||
<td>1,256</td>
|
||||
<td>1,353</td>
|
||||
<td>1,261</td>
|
||||
<td>1,356</td>
|
||||
<td>496</td>
|
||||
<td>3,105</td>
|
||||
<td>3,113</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.193">v1.0.193</a></td>
|
||||
<td>2020-03-08T08:58:53Z</td>
|
||||
<td>28,552</td>
|
||||
<td>10,881</td>
|
||||
<td>28,564</td>
|
||||
<td>10,883</td>
|
||||
<td>7,338</td>
|
||||
<td>46,771</td>
|
||||
<td>46,785</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.192">v1.0.192</a></td>
|
||||
<td>2020-03-06T23:27:52Z</td>
|
||||
<td>453</td>
|
||||
<td>457</td>
|
||||
<td>111</td>
|
||||
<td>82</td>
|
||||
<td>646</td>
|
||||
<td>650</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.190">v1.0.190</a></td>
|
||||
<td>2020-03-06T01:22:22Z</td>
|
||||
<td>351</td>
|
||||
<td>354</td>
|
||||
<td>79</td>
|
||||
<td>79</td>
|
||||
<td>509</td>
|
||||
<td>512</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.189">v1.0.189</a></td>
|
||||
<td>2020-03-04T17:27:15Z</td>
|
||||
<td>326</td>
|
||||
<td>329</td>
|
||||
<td>88</td>
|
||||
<td>87</td>
|
||||
<td>501</td>
|
||||
<td>504</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.187">v1.0.187</a></td>
|
||||
<td>2020-03-01T12:31:06Z</td>
|
||||
<td>904</td>
|
||||
<td>906</td>
|
||||
<td>222</td>
|
||||
<td>258</td>
|
||||
<td>1,384</td>
|
||||
<td>260</td>
|
||||
<td>1,388</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.179">v1.0.179</a></td>
|
||||
<td>2020-01-24T22:42:41Z</td>
|
||||
<td>70,893</td>
|
||||
<td>28,416</td>
|
||||
<td>22,451</td>
|
||||
<td>121,760</td>
|
||||
<td>70,904</td>
|
||||
<td>28,427</td>
|
||||
<td>22,465</td>
|
||||
<td>121,796</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.178">v1.0.178</a></td>
|
||||
<td>2020-01-20T19:06:45Z</td>
|
||||
<td>17,507</td>
|
||||
<td>5,950</td>
|
||||
<td>2,571</td>
|
||||
<td>26,028</td>
|
||||
<td>17,512</td>
|
||||
<td>5,951</td>
|
||||
<td>2,573</td>
|
||||
<td>26,036</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.177">v1.0.177</a></td>
|
||||
<td>2019-12-30T14:40:40Z</td>
|
||||
<td>1,923</td>
|
||||
<td>1,927</td>
|
||||
<td>428</td>
|
||||
<td>621</td>
|
||||
<td>2,972</td>
|
||||
<td>627</td>
|
||||
<td>2,982</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.176">v1.0.176</a></td>
|
||||
<td>2019-12-14T10:36:44Z</td>
|
||||
<td>3,111</td>
|
||||
<td>2,521</td>
|
||||
<td>456</td>
|
||||
<td>6,088</td>
|
||||
<td>3,113</td>
|
||||
<td>2,522</td>
|
||||
<td>460</td>
|
||||
<td>6,095</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.175">v1.0.175</a></td>
|
||||
<td>2019-12-08T11:48:47Z</td>
|
||||
<td>71,517</td>
|
||||
<td>16,814</td>
|
||||
<td>16,401</td>
|
||||
<td>104,732</td>
|
||||
<td>71,698</td>
|
||||
<td>16,832</td>
|
||||
<td>16,426</td>
|
||||
<td>104,956</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.174">v1.0.174</a></td>
|
||||
<td>2019-11-12T18:20:58Z</td>
|
||||
<td>30,370</td>
|
||||
<td>11,646</td>
|
||||
<td>30,375</td>
|
||||
<td>11,653</td>
|
||||
<td>8,213</td>
|
||||
<td>50,229</td>
|
||||
<td>50,241</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.173">v1.0.173</a></td>
|
||||
<td>2019-11-11T08:33:35Z</td>
|
||||
<td>5,052</td>
|
||||
<td>2,068</td>
|
||||
<td>735</td>
|
||||
<td>7,855</td>
|
||||
<td>736</td>
|
||||
<td>7,856</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.170">v1.0.170</a></td>
|
||||
<td>2019-10-13T22:13:04Z</td>
|
||||
<td>27,351</td>
|
||||
<td>8,715</td>
|
||||
<td>7,660</td>
|
||||
<td>43,726</td>
|
||||
<td>27,356</td>
|
||||
<td>8,718</td>
|
||||
<td>7,661</td>
|
||||
<td>43,735</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.169">v1.0.169</a></td>
|
||||
<td>2019-09-27T18:35:13Z</td>
|
||||
<td>17,071</td>
|
||||
<td>5,910</td>
|
||||
<td>17,074</td>
|
||||
<td>5,911</td>
|
||||
<td>3,749</td>
|
||||
<td>26,730</td>
|
||||
<td>26,734</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.168">v1.0.168</a></td>
|
||||
@ -696,18 +712,18 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.167">v1.0.167</a></td>
|
||||
<td>2019-09-10T08:48:37Z</td>
|
||||
<td>16,768</td>
|
||||
<td>5,692</td>
|
||||
<td>16,770</td>
|
||||
<td>5,693</td>
|
||||
<td>3,697</td>
|
||||
<td>26,157</td>
|
||||
<td>26,160</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.166">v1.0.166</a></td>
|
||||
<td>2019-09-09T17:35:54Z</td>
|
||||
<td>1,948</td>
|
||||
<td>554</td>
|
||||
<td>232</td>
|
||||
<td>2,734</td>
|
||||
<td>233</td>
|
||||
<td>2,735</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.165">v1.0.165</a></td>
|
||||
@ -720,18 +736,18 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.161">v1.0.161</a></td>
|
||||
<td>2019-07-13T18:30:00Z</td>
|
||||
<td>19,259</td>
|
||||
<td>19,262</td>
|
||||
<td>6,344</td>
|
||||
<td>4,130</td>
|
||||
<td>29,733</td>
|
||||
<td>29,736</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.160">v1.0.160</a></td>
|
||||
<td>2019-06-15T00:21:40Z</td>
|
||||
<td>30,406</td>
|
||||
<td>30,411</td>
|
||||
<td>7,732</td>
|
||||
<td>8,095</td>
|
||||
<td>46,233</td>
|
||||
<td>46,238</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.159">v1.0.159</a></td>
|
||||
@ -760,10 +776,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.153">v1.0.153</a></td>
|
||||
<td>2019-05-15T06:27:29Z</td>
|
||||
<td>841</td>
|
||||
<td>92</td>
|
||||
<td>842</td>
|
||||
<td>93</td>
|
||||
<td>103</td>
|
||||
<td>1,036</td>
|
||||
<td>1,038</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.152">v1.0.152</a></td>
|
||||
@ -794,48 +810,48 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2019-05-08T19:12:24Z</td>
|
||||
<td>123</td>
|
||||
<td>49</td>
|
||||
<td>91</td>
|
||||
<td>263</td>
|
||||
<td>92</td>
|
||||
<td>264</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.145">v1.0.145</a></td>
|
||||
<td>2019-05-03T09:16:53Z</td>
|
||||
<td>6,984</td>
|
||||
<td>6,988</td>
|
||||
<td>2,854</td>
|
||||
<td>1,433</td>
|
||||
<td>11,271</td>
|
||||
<td>11,275</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.143">v1.0.143</a></td>
|
||||
<td>2019-04-22T10:51:38Z</td>
|
||||
<td>11,908</td>
|
||||
<td>3,542</td>
|
||||
<td>3,543</td>
|
||||
<td>2,775</td>
|
||||
<td>18,225</td>
|
||||
<td>18,226</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.142">v1.0.142</a></td>
|
||||
<td>2019-04-02T16:44:51Z</td>
|
||||
<td>14,626</td>
|
||||
<td>4,553</td>
|
||||
<td>14,633</td>
|
||||
<td>4,555</td>
|
||||
<td>4,723</td>
|
||||
<td>23,902</td>
|
||||
<td>23,911</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.140">v1.0.140</a></td>
|
||||
<td>2019-03-10T20:59:58Z</td>
|
||||
<td>13,617</td>
|
||||
<td>4,160</td>
|
||||
<td>3,134</td>
|
||||
<td>20,911</td>
|
||||
<td>4,161</td>
|
||||
<td>3,147</td>
|
||||
<td>20,925</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.139">v1.0.139</a></td>
|
||||
<td>2019-03-09T10:06:48Z</td>
|
||||
<td>112</td>
|
||||
<td>52</td>
|
||||
<td>40</td>
|
||||
<td>204</td>
|
||||
<td>41</td>
|
||||
<td>205</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.138">v1.0.138</a></td>
|
||||
@ -848,42 +864,42 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.137">v1.0.137</a></td>
|
||||
<td>2019-03-03T01:12:51Z</td>
|
||||
<td>577</td>
|
||||
<td>578</td>
|
||||
<td>52</td>
|
||||
<td>80</td>
|
||||
<td>709</td>
|
||||
<td>710</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.135">v1.0.135</a></td>
|
||||
<td>2019-02-27T23:36:57Z</td>
|
||||
<td>12,467</td>
|
||||
<td>12,470</td>
|
||||
<td>3,950</td>
|
||||
<td>4,068</td>
|
||||
<td>20,485</td>
|
||||
<td>4,069</td>
|
||||
<td>20,489</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.134">v1.0.134</a></td>
|
||||
<td>2019-02-27T10:21:44Z</td>
|
||||
<td>1,458</td>
|
||||
<td>559</td>
|
||||
<td>215</td>
|
||||
<td>2,232</td>
|
||||
<td>1,460</td>
|
||||
<td>561</td>
|
||||
<td>216</td>
|
||||
<td>2,237</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.132">v1.0.132</a></td>
|
||||
<td>2019-02-26T23:02:05Z</td>
|
||||
<td>1,077</td>
|
||||
<td>443</td>
|
||||
<td>91</td>
|
||||
<td>1,611</td>
|
||||
<td>1,079</td>
|
||||
<td>445</td>
|
||||
<td>92</td>
|
||||
<td>1,616</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.127">v1.0.127</a></td>
|
||||
<td>2019-02-14T23:12:48Z</td>
|
||||
<td>9,705</td>
|
||||
<td>9,711</td>
|
||||
<td>3,162</td>
|
||||
<td>2,924</td>
|
||||
<td>15,791</td>
|
||||
<td>15,797</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.126">v1.0.126</a></td>
|
||||
@ -896,10 +912,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.125">v1.0.125</a></td>
|
||||
<td>2019-01-26T18:14:33Z</td>
|
||||
<td>10,241</td>
|
||||
<td>10,242</td>
|
||||
<td>3,549</td>
|
||||
<td>1,699</td>
|
||||
<td>15,489</td>
|
||||
<td>15,490</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.120">v1.0.120</a></td>
|
||||
@ -928,10 +944,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.117">v1.0.117</a></td>
|
||||
<td>2018-11-24T12:05:24Z</td>
|
||||
<td>16,245</td>
|
||||
<td>16,249</td>
|
||||
<td>4,885</td>
|
||||
<td>6,377</td>
|
||||
<td>27,507</td>
|
||||
<td>27,511</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.116">v1.0.116</a></td>
|
||||
@ -960,10 +976,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.111">v1.0.111</a></td>
|
||||
<td>2018-09-30T20:15:09Z</td>
|
||||
<td>11,987</td>
|
||||
<td>3,263</td>
|
||||
<td>11,988</td>
|
||||
<td>3,269</td>
|
||||
<td>3,659</td>
|
||||
<td>18,909</td>
|
||||
<td>18,916</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.110">v1.0.110</a></td>
|
||||
@ -993,9 +1009,9 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.107">v1.0.107</a></td>
|
||||
<td>2018-09-16T19:51:07Z</td>
|
||||
<td>7,143</td>
|
||||
<td>2,129</td>
|
||||
<td>2,130</td>
|
||||
<td>1,704</td>
|
||||
<td>10,976</td>
|
||||
<td>10,977</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.106">v1.0.106</a></td>
|
||||
@ -1018,8 +1034,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-06-28T20:25:36Z</td>
|
||||
<td>15,031</td>
|
||||
<td>4,690</td>
|
||||
<td>7,304</td>
|
||||
<td>27,025</td>
|
||||
<td>7,307</td>
|
||||
<td>27,028</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.103">v1.0.103</a></td>
|
||||
@ -1042,8 +1058,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-06-14T17:41:43Z</td>
|
||||
<td>873</td>
|
||||
<td>426</td>
|
||||
<td>236</td>
|
||||
<td>1,535</td>
|
||||
<td>237</td>
|
||||
<td>1,536</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.99">v1.0.99</a></td>
|
||||
@ -1066,8 +1082,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-05-26T16:36:39Z</td>
|
||||
<td>2,713</td>
|
||||
<td>1,218</td>
|
||||
<td>1,534</td>
|
||||
<td>5,465</td>
|
||||
<td>1,543</td>
|
||||
<td>5,474</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.95">v1.0.95</a></td>
|
||||
@ -1089,9 +1105,9 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.93">v1.0.93</a></td>
|
||||
<td>2018-05-14T11:36:01Z</td>
|
||||
<td>1,783</td>
|
||||
<td>1,044</td>
|
||||
<td>1,050</td>
|
||||
<td>754</td>
|
||||
<td>3,581</td>
|
||||
<td>3,587</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.91">v1.0.91</a></td>
|
||||
@ -1120,10 +1136,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.83">v1.0.83</a></td>
|
||||
<td>2018-04-04T19:43:58Z</td>
|
||||
<td>4,778</td>
|
||||
<td>2,524</td>
|
||||
<td>4,784</td>
|
||||
<td>2,525</td>
|
||||
<td>2,654</td>
|
||||
<td>9,956</td>
|
||||
<td>9,963</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.82">v1.0.82</a></td>
|
||||
@ -1146,8 +1162,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-03-23T18:00:11Z</td>
|
||||
<td>929</td>
|
||||
<td>532</td>
|
||||
<td>375</td>
|
||||
<td>1,836</td>
|
||||
<td>376</td>
|
||||
<td>1,837</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.78">v1.0.78</a></td>
|
||||
@ -1160,26 +1176,26 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.77">v1.0.77</a></td>
|
||||
<td>2018-03-16T15:12:35Z</td>
|
||||
<td>173</td>
|
||||
<td>174</td>
|
||||
<td>101</td>
|
||||
<td>44</td>
|
||||
<td>318</td>
|
||||
<td>319</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.72">v1.0.72</a></td>
|
||||
<td>2018-03-14T09:44:35Z</td>
|
||||
<td>404</td>
|
||||
<td>251</td>
|
||||
<td>252</td>
|
||||
<td>54</td>
|
||||
<td>709</td>
|
||||
<td>710</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.70">v1.0.70</a></td>
|
||||
<td>2018-02-28T20:04:30Z</td>
|
||||
<td>1,852</td>
|
||||
<td>1,045</td>
|
||||
<td>1,046</td>
|
||||
<td>1,250</td>
|
||||
<td>4,147</td>
|
||||
<td>4,148</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.67">v1.0.67</a></td>
|
||||
@ -1194,8 +1210,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-02-18T23:09:09Z</td>
|
||||
<td>325</td>
|
||||
<td>132</td>
|
||||
<td>84</td>
|
||||
<td>541</td>
|
||||
<td>85</td>
|
||||
<td>542</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v1.0.65">v1.0.65</a></td>
|
||||
@ -1226,16 +1242,16 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2018-02-12T20:19:58Z</td>
|
||||
<td>557</td>
|
||||
<td>295</td>
|
||||
<td>366</td>
|
||||
<td>1,218</td>
|
||||
<td>367</td>
|
||||
<td>1,219</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.61">v0.10.61</a></td>
|
||||
<td>2018-02-08T18:27:39Z</td>
|
||||
<td>970</td>
|
||||
<td>625</td>
|
||||
<td>956</td>
|
||||
<td>2,551</td>
|
||||
<td>626</td>
|
||||
<td>957</td>
|
||||
<td>2,553</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.60">v0.10.60</a></td>
|
||||
@ -1312,10 +1328,10 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.39">v0.10.39</a></td>
|
||||
<td>2017-12-11T21:19:44Z</td>
|
||||
<td>5,742</td>
|
||||
<td>4,218</td>
|
||||
<td>3,120</td>
|
||||
<td>13,080</td>
|
||||
<td>5,753</td>
|
||||
<td>4,226</td>
|
||||
<td>3,128</td>
|
||||
<td>13,107</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.38">v0.10.38</a></td>
|
||||
@ -1369,9 +1385,9 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.31">v0.10.31</a></td>
|
||||
<td>2017-12-01T09:56:44Z</td>
|
||||
<td>890</td>
|
||||
<td>1,446</td>
|
||||
<td>1,447</td>
|
||||
<td>406</td>
|
||||
<td>2,742</td>
|
||||
<td>2,743</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.30">v0.10.30</a></td>
|
||||
@ -1402,8 +1418,8 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td>2017-11-24T14:27:49Z</td>
|
||||
<td>147</td>
|
||||
<td>692</td>
|
||||
<td>6,278</td>
|
||||
<td>7,117</td>
|
||||
<td>6,300</td>
|
||||
<td>7,139</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.23">v0.10.23</a></td>
|
||||
@ -1441,9 +1457,9 @@ https://github.com/laurent22/joplin/blob/master/readme/stats.md
|
||||
<td><a href="https://github.com/laurent22/joplin/releases/tag/v0.10.19">v0.10.19</a></td>
|
||||
<td>2017-11-20T18:59:48Z</td>
|
||||
<td>14</td>
|
||||
<td>638</td>
|
||||
<td>639</td>
|
||||
<td>12</td>
|
||||
<td>664</td>
|
||||
<td>665</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
2588
readme/changelog.md
2588
readme/changelog.md
File diff suppressed because it is too large
Load Diff
148
readme/stats.md
148
readme/stats.md
@ -2,120 +2,122 @@
|
||||
|
||||
Name | Value
|
||||
--- | ---
|
||||
Total Windows downloads | 914,303
|
||||
Total macOs downloads | 352,705
|
||||
Total Linux downloads | 256,195
|
||||
Total Windows downloads | 960,363
|
||||
Total macOs downloads | 370,685
|
||||
Total Linux downloads | 267,570
|
||||
Windows % | 60%
|
||||
macOS % | 23%
|
||||
Linux % | 17%
|
||||
|
||||
Version | Date | Windows | macOS | Linux | Total
|
||||
--- | --- | --- | --- | --- | ---
|
||||
[v1.0.231](https://github.com/laurent22/joplin/releases/tag/v1.0.231) | 2020-07-24T17:21:53Z | 23 | 10 | 9 | 42
|
||||
[v1.0.229](https://github.com/laurent22/joplin/releases/tag/v1.0.229) | 2020-07-14T15:15:18Z | 829 | 323 | 452 | 1,604
|
||||
[v1.0.227](https://github.com/laurent22/joplin/releases/tag/v1.0.227) | 2020-07-07T20:44:54Z | 19,611 | 9,341 | 4,170 | 33,122
|
||||
[v1.0.226](https://github.com/laurent22/joplin/releases/tag/v1.0.226) | 2020-07-04T10:21:26Z | 4,742 | 2,174 | 641 | 7,557
|
||||
[v1.0.224](https://github.com/laurent22/joplin/releases/tag/v1.0.224) | 2020-06-20T22:26:08Z | 24,506 | 10,883 | 5,957 | 41,346
|
||||
[v1.0.223](https://github.com/laurent22/joplin/releases/tag/v1.0.223) | 2020-06-20T11:51:27Z | 143 | 70 | 59 | 272
|
||||
[v1.0.221](https://github.com/laurent22/joplin/releases/tag/v1.0.221) | 2020-06-20T01:44:20Z | 810 | 163 | 189 | 1,162
|
||||
[v1.0.220](https://github.com/laurent22/joplin/releases/tag/v1.0.220) | 2020-06-13T18:26:22Z | 31,271 | 9,854 | 6,383 | 47,508
|
||||
[v1.0.218](https://github.com/laurent22/joplin/releases/tag/v1.0.218) | 2020-06-07T10:43:34Z | 14,363 | 6,919 | 2,939 | 24,221
|
||||
[v1.0.235](https://github.com/laurent22/joplin/releases/tag/v1.0.235) | 2020-08-18T22:08:01Z | 302 | 66 | 55 | 423
|
||||
[v1.0.234](https://github.com/laurent22/joplin/releases/tag/v1.0.234) | 2020-08-17T23:13:02Z | 288 | 76 | 71 | 435
|
||||
[v1.0.233](https://github.com/laurent22/joplin/releases/tag/v1.0.233) | 2020-08-01T14:51:15Z | 24,632 | 11,969 | 5,946 | 42,547
|
||||
[v1.0.232](https://github.com/laurent22/joplin/releases/tag/v1.0.232) | 2020-07-28T22:34:40Z | 608 | 185 | 161 | 954
|
||||
[v1.0.227](https://github.com/laurent22/joplin/releases/tag/v1.0.227) | 2020-07-07T20:44:54Z | 39,786 | 15,130 | 9,547 | 64,463
|
||||
[v1.0.226](https://github.com/laurent22/joplin/releases/tag/v1.0.226) | 2020-07-04T10:21:26Z | 4,763 | 2,196 | 671 | 7,630
|
||||
[v1.0.224](https://github.com/laurent22/joplin/releases/tag/v1.0.224) | 2020-06-20T22:26:08Z | 24,572 | 10,919 | 5,975 | 41,466
|
||||
[v1.0.223](https://github.com/laurent22/joplin/releases/tag/v1.0.223) | 2020-06-20T11:51:27Z | 151 | 80 | 63 | 294
|
||||
[v1.0.221](https://github.com/laurent22/joplin/releases/tag/v1.0.221) | 2020-06-20T01:44:20Z | 819 | 171 | 193 | 1,183
|
||||
[v1.0.220](https://github.com/laurent22/joplin/releases/tag/v1.0.220) | 2020-06-13T18:26:22Z | 31,394 | 9,860 | 6,392 | 47,646
|
||||
[v1.0.218](https://github.com/laurent22/joplin/releases/tag/v1.0.218) | 2020-06-07T10:43:34Z | 14,396 | 6,926 | 2,944 | 24,266
|
||||
[v1.0.217](https://github.com/laurent22/joplin/releases/tag/v1.0.217) | 2020-06-06T15:17:27Z | 212 | 80 | 49 | 341
|
||||
[v1.0.216](https://github.com/laurent22/joplin/releases/tag/v1.0.216) | 2020-05-24T14:21:01Z | 35,792 | 14,170 | 10,108 | 60,070
|
||||
[v1.0.214](https://github.com/laurent22/joplin/releases/tag/v1.0.214) | 2020-05-21T17:15:15Z | 6,346 | 3,429 | 755 | 10,530
|
||||
[v1.0.212](https://github.com/laurent22/joplin/releases/tag/v1.0.212) | 2020-05-21T07:48:39Z | 193 | 58 | 41 | 292
|
||||
[v1.0.216](https://github.com/laurent22/joplin/releases/tag/v1.0.216) | 2020-05-24T14:21:01Z | 35,921 | 14,191 | 10,117 | 60,229
|
||||
[v1.0.214](https://github.com/laurent22/joplin/releases/tag/v1.0.214) | 2020-05-21T17:15:15Z | 6,358 | 3,433 | 755 | 10,546
|
||||
[v1.0.212](https://github.com/laurent22/joplin/releases/tag/v1.0.212) | 2020-05-21T07:48:39Z | 194 | 58 | 41 | 293
|
||||
[v1.0.211](https://github.com/laurent22/joplin/releases/tag/v1.0.211) | 2020-05-20T08:59:16Z | 289 | 123 | 81 | 493
|
||||
[v1.0.209](https://github.com/laurent22/joplin/releases/tag/v1.0.209) | 2020-05-17T18:32:51Z | 1,383 | 812 | 141 | 2,336
|
||||
[v1.0.207](https://github.com/laurent22/joplin/releases/tag/v1.0.207) | 2020-05-10T16:37:35Z | 1,167 | 254 | 1,008 | 2,429
|
||||
[v1.0.201](https://github.com/laurent22/joplin/releases/tag/v1.0.201) | 2020-04-15T22:55:13Z | 51,691 | 19,997 | 18,161 | 89,849
|
||||
[v1.0.200](https://github.com/laurent22/joplin/releases/tag/v1.0.200) | 2020-04-12T12:17:46Z | 9,534 | 4,876 | 1,893 | 16,303
|
||||
[v1.0.199](https://github.com/laurent22/joplin/releases/tag/v1.0.199) | 2020-04-10T18:41:58Z | 19,177 | 5,872 | 3,777 | 28,826
|
||||
[v1.0.197](https://github.com/laurent22/joplin/releases/tag/v1.0.197) | 2020-03-30T17:21:22Z | 21,955 | 9,477 | 5,548 | 36,980
|
||||
[v1.0.195](https://github.com/laurent22/joplin/releases/tag/v1.0.195) | 2020-03-22T19:56:12Z | 18,836 | 7,927 | 4,493 | 31,256
|
||||
[v1.0.194](https://github.com/laurent22/joplin/releases/tag/v1.0.194) | 2020-03-14T00:00:32Z | 1,256 | 1,353 | 496 | 3,105
|
||||
[v1.0.193](https://github.com/laurent22/joplin/releases/tag/v1.0.193) | 2020-03-08T08:58:53Z | 28,552 | 10,881 | 7,338 | 46,771
|
||||
[v1.0.192](https://github.com/laurent22/joplin/releases/tag/v1.0.192) | 2020-03-06T23:27:52Z | 453 | 111 | 82 | 646
|
||||
[v1.0.190](https://github.com/laurent22/joplin/releases/tag/v1.0.190) | 2020-03-06T01:22:22Z | 351 | 79 | 79 | 509
|
||||
[v1.0.189](https://github.com/laurent22/joplin/releases/tag/v1.0.189) | 2020-03-04T17:27:15Z | 326 | 88 | 87 | 501
|
||||
[v1.0.187](https://github.com/laurent22/joplin/releases/tag/v1.0.187) | 2020-03-01T12:31:06Z | 904 | 222 | 258 | 1,384
|
||||
[v1.0.179](https://github.com/laurent22/joplin/releases/tag/v1.0.179) | 2020-01-24T22:42:41Z | 70,893 | 28,416 | 22,451 | 121,760
|
||||
[v1.0.178](https://github.com/laurent22/joplin/releases/tag/v1.0.178) | 2020-01-20T19:06:45Z | 17,507 | 5,950 | 2,571 | 26,028
|
||||
[v1.0.177](https://github.com/laurent22/joplin/releases/tag/v1.0.177) | 2019-12-30T14:40:40Z | 1,923 | 428 | 621 | 2,972
|
||||
[v1.0.176](https://github.com/laurent22/joplin/releases/tag/v1.0.176) | 2019-12-14T10:36:44Z | 3,111 | 2,521 | 456 | 6,088
|
||||
[v1.0.175](https://github.com/laurent22/joplin/releases/tag/v1.0.175) | 2019-12-08T11:48:47Z | 71,517 | 16,814 | 16,401 | 104,732
|
||||
[v1.0.174](https://github.com/laurent22/joplin/releases/tag/v1.0.174) | 2019-11-12T18:20:58Z | 30,370 | 11,646 | 8,213 | 50,229
|
||||
[v1.0.173](https://github.com/laurent22/joplin/releases/tag/v1.0.173) | 2019-11-11T08:33:35Z | 5,052 | 2,068 | 735 | 7,855
|
||||
[v1.0.170](https://github.com/laurent22/joplin/releases/tag/v1.0.170) | 2019-10-13T22:13:04Z | 27,351 | 8,715 | 7,660 | 43,726
|
||||
[v1.0.169](https://github.com/laurent22/joplin/releases/tag/v1.0.169) | 2019-09-27T18:35:13Z | 17,071 | 5,910 | 3,749 | 26,730
|
||||
[v1.0.209](https://github.com/laurent22/joplin/releases/tag/v1.0.209) | 2020-05-17T18:32:51Z | 1,383 | 818 | 142 | 2,343
|
||||
[v1.0.207](https://github.com/laurent22/joplin/releases/tag/v1.0.207) | 2020-05-10T16:37:35Z | 1,170 | 254 | 1,008 | 2,432
|
||||
[v1.0.201](https://github.com/laurent22/joplin/releases/tag/v1.0.201) | 2020-04-15T22:55:13Z | 51,847 | 20,010 | 18,162 | 90,019
|
||||
[v1.0.200](https://github.com/laurent22/joplin/releases/tag/v1.0.200) | 2020-04-12T12:17:46Z | 9,534 | 4,878 | 1,895 | 16,307
|
||||
[v1.0.199](https://github.com/laurent22/joplin/releases/tag/v1.0.199) | 2020-04-10T18:41:58Z | 19,186 | 5,872 | 3,777 | 28,835
|
||||
[v1.0.197](https://github.com/laurent22/joplin/releases/tag/v1.0.197) | 2020-03-30T17:21:22Z | 21,983 | 9,485 | 5,565 | 37,033
|
||||
[v1.0.195](https://github.com/laurent22/joplin/releases/tag/v1.0.195) | 2020-03-22T19:56:12Z | 18,840 | 7,928 | 4,498 | 31,266
|
||||
[v1.0.194](https://github.com/laurent22/joplin/releases/tag/v1.0.194) | 2020-03-14T00:00:32Z | 1,261 | 1,356 | 496 | 3,113
|
||||
[v1.0.193](https://github.com/laurent22/joplin/releases/tag/v1.0.193) | 2020-03-08T08:58:53Z | 28,564 | 10,883 | 7,338 | 46,785
|
||||
[v1.0.192](https://github.com/laurent22/joplin/releases/tag/v1.0.192) | 2020-03-06T23:27:52Z | 457 | 111 | 82 | 650
|
||||
[v1.0.190](https://github.com/laurent22/joplin/releases/tag/v1.0.190) | 2020-03-06T01:22:22Z | 354 | 79 | 79 | 512
|
||||
[v1.0.189](https://github.com/laurent22/joplin/releases/tag/v1.0.189) | 2020-03-04T17:27:15Z | 329 | 88 | 87 | 504
|
||||
[v1.0.187](https://github.com/laurent22/joplin/releases/tag/v1.0.187) | 2020-03-01T12:31:06Z | 906 | 222 | 260 | 1,388
|
||||
[v1.0.179](https://github.com/laurent22/joplin/releases/tag/v1.0.179) | 2020-01-24T22:42:41Z | 70,904 | 28,427 | 22,465 | 121,796
|
||||
[v1.0.178](https://github.com/laurent22/joplin/releases/tag/v1.0.178) | 2020-01-20T19:06:45Z | 17,512 | 5,951 | 2,573 | 26,036
|
||||
[v1.0.177](https://github.com/laurent22/joplin/releases/tag/v1.0.177) | 2019-12-30T14:40:40Z | 1,927 | 428 | 627 | 2,982
|
||||
[v1.0.176](https://github.com/laurent22/joplin/releases/tag/v1.0.176) | 2019-12-14T10:36:44Z | 3,113 | 2,522 | 460 | 6,095
|
||||
[v1.0.175](https://github.com/laurent22/joplin/releases/tag/v1.0.175) | 2019-12-08T11:48:47Z | 71,698 | 16,832 | 16,426 | 104,956
|
||||
[v1.0.174](https://github.com/laurent22/joplin/releases/tag/v1.0.174) | 2019-11-12T18:20:58Z | 30,375 | 11,653 | 8,213 | 50,241
|
||||
[v1.0.173](https://github.com/laurent22/joplin/releases/tag/v1.0.173) | 2019-11-11T08:33:35Z | 5,052 | 2,068 | 736 | 7,856
|
||||
[v1.0.170](https://github.com/laurent22/joplin/releases/tag/v1.0.170) | 2019-10-13T22:13:04Z | 27,356 | 8,718 | 7,661 | 43,735
|
||||
[v1.0.169](https://github.com/laurent22/joplin/releases/tag/v1.0.169) | 2019-09-27T18:35:13Z | 17,074 | 5,911 | 3,749 | 26,734
|
||||
[v1.0.168](https://github.com/laurent22/joplin/releases/tag/v1.0.168) | 2019-09-25T21:21:38Z | 5,320 | 2,263 | 710 | 8,293
|
||||
[v1.0.167](https://github.com/laurent22/joplin/releases/tag/v1.0.167) | 2019-09-10T08:48:37Z | 16,768 | 5,692 | 3,697 | 26,157
|
||||
[v1.0.166](https://github.com/laurent22/joplin/releases/tag/v1.0.166) | 2019-09-09T17:35:54Z | 1,948 | 554 | 232 | 2,734
|
||||
[v1.0.167](https://github.com/laurent22/joplin/releases/tag/v1.0.167) | 2019-09-10T08:48:37Z | 16,770 | 5,693 | 3,697 | 26,160
|
||||
[v1.0.166](https://github.com/laurent22/joplin/releases/tag/v1.0.166) | 2019-09-09T17:35:54Z | 1,948 | 554 | 233 | 2,735
|
||||
[v1.0.165](https://github.com/laurent22/joplin/releases/tag/v1.0.165) | 2019-08-14T21:46:29Z | 18,869 | 6,955 | 5,458 | 31,282
|
||||
[v1.0.161](https://github.com/laurent22/joplin/releases/tag/v1.0.161) | 2019-07-13T18:30:00Z | 19,259 | 6,344 | 4,130 | 29,733
|
||||
[v1.0.160](https://github.com/laurent22/joplin/releases/tag/v1.0.160) | 2019-06-15T00:21:40Z | 30,406 | 7,732 | 8,095 | 46,233
|
||||
[v1.0.161](https://github.com/laurent22/joplin/releases/tag/v1.0.161) | 2019-07-13T18:30:00Z | 19,262 | 6,344 | 4,130 | 29,736
|
||||
[v1.0.160](https://github.com/laurent22/joplin/releases/tag/v1.0.160) | 2019-06-15T00:21:40Z | 30,411 | 7,732 | 8,095 | 46,238
|
||||
[v1.0.159](https://github.com/laurent22/joplin/releases/tag/v1.0.159) | 2019-06-08T00:00:19Z | 5,186 | 2,171 | 1,102 | 8,459
|
||||
[v1.0.158](https://github.com/laurent22/joplin/releases/tag/v1.0.158) | 2019-05-27T19:01:18Z | 9,806 | 3,529 | 1,933 | 15,268
|
||||
[v1.0.157](https://github.com/laurent22/joplin/releases/tag/v1.0.157) | 2019-05-26T17:55:53Z | 2,170 | 838 | 287 | 3,295
|
||||
[v1.0.153](https://github.com/laurent22/joplin/releases/tag/v1.0.153) | 2019-05-15T06:27:29Z | 841 | 92 | 103 | 1,036
|
||||
[v1.0.153](https://github.com/laurent22/joplin/releases/tag/v1.0.153) | 2019-05-15T06:27:29Z | 842 | 93 | 103 | 1,038
|
||||
[v1.0.152](https://github.com/laurent22/joplin/releases/tag/v1.0.152) | 2019-05-13T09:08:07Z | 13,852 | 4,417 | 4,058 | 22,327
|
||||
[v1.0.151](https://github.com/laurent22/joplin/releases/tag/v1.0.151) | 2019-05-12T15:14:32Z | 1,946 | 527 | 954 | 3,427
|
||||
[v1.0.150](https://github.com/laurent22/joplin/releases/tag/v1.0.150) | 2019-05-12T11:27:48Z | 415 | 126 | 63 | 604
|
||||
[v1.0.148](https://github.com/laurent22/joplin/releases/tag/v1.0.148) | 2019-05-08T19:12:24Z | 123 | 49 | 91 | 263
|
||||
[v1.0.145](https://github.com/laurent22/joplin/releases/tag/v1.0.145) | 2019-05-03T09:16:53Z | 6,984 | 2,854 | 1,433 | 11,271
|
||||
[v1.0.143](https://github.com/laurent22/joplin/releases/tag/v1.0.143) | 2019-04-22T10:51:38Z | 11,908 | 3,542 | 2,775 | 18,225
|
||||
[v1.0.142](https://github.com/laurent22/joplin/releases/tag/v1.0.142) | 2019-04-02T16:44:51Z | 14,626 | 4,553 | 4,723 | 23,902
|
||||
[v1.0.140](https://github.com/laurent22/joplin/releases/tag/v1.0.140) | 2019-03-10T20:59:58Z | 13,617 | 4,160 | 3,134 | 20,911
|
||||
[v1.0.139](https://github.com/laurent22/joplin/releases/tag/v1.0.139) | 2019-03-09T10:06:48Z | 112 | 52 | 40 | 204
|
||||
[v1.0.148](https://github.com/laurent22/joplin/releases/tag/v1.0.148) | 2019-05-08T19:12:24Z | 123 | 49 | 92 | 264
|
||||
[v1.0.145](https://github.com/laurent22/joplin/releases/tag/v1.0.145) | 2019-05-03T09:16:53Z | 6,988 | 2,854 | 1,433 | 11,275
|
||||
[v1.0.143](https://github.com/laurent22/joplin/releases/tag/v1.0.143) | 2019-04-22T10:51:38Z | 11,908 | 3,543 | 2,775 | 18,226
|
||||
[v1.0.142](https://github.com/laurent22/joplin/releases/tag/v1.0.142) | 2019-04-02T16:44:51Z | 14,633 | 4,555 | 4,723 | 23,911
|
||||
[v1.0.140](https://github.com/laurent22/joplin/releases/tag/v1.0.140) | 2019-03-10T20:59:58Z | 13,617 | 4,161 | 3,147 | 20,925
|
||||
[v1.0.139](https://github.com/laurent22/joplin/releases/tag/v1.0.139) | 2019-03-09T10:06:48Z | 112 | 52 | 41 | 205
|
||||
[v1.0.138](https://github.com/laurent22/joplin/releases/tag/v1.0.138) | 2019-03-03T17:23:00Z | 140 | 80 | 81 | 301
|
||||
[v1.0.137](https://github.com/laurent22/joplin/releases/tag/v1.0.137) | 2019-03-03T01:12:51Z | 577 | 52 | 80 | 709
|
||||
[v1.0.135](https://github.com/laurent22/joplin/releases/tag/v1.0.135) | 2019-02-27T23:36:57Z | 12,467 | 3,950 | 4,068 | 20,485
|
||||
[v1.0.134](https://github.com/laurent22/joplin/releases/tag/v1.0.134) | 2019-02-27T10:21:44Z | 1,458 | 559 | 215 | 2,232
|
||||
[v1.0.132](https://github.com/laurent22/joplin/releases/tag/v1.0.132) | 2019-02-26T23:02:05Z | 1,077 | 443 | 91 | 1,611
|
||||
[v1.0.127](https://github.com/laurent22/joplin/releases/tag/v1.0.127) | 2019-02-14T23:12:48Z | 9,705 | 3,162 | 2,924 | 15,791
|
||||
[v1.0.137](https://github.com/laurent22/joplin/releases/tag/v1.0.137) | 2019-03-03T01:12:51Z | 578 | 52 | 80 | 710
|
||||
[v1.0.135](https://github.com/laurent22/joplin/releases/tag/v1.0.135) | 2019-02-27T23:36:57Z | 12,470 | 3,950 | 4,069 | 20,489
|
||||
[v1.0.134](https://github.com/laurent22/joplin/releases/tag/v1.0.134) | 2019-02-27T10:21:44Z | 1,460 | 561 | 216 | 2,237
|
||||
[v1.0.132](https://github.com/laurent22/joplin/releases/tag/v1.0.132) | 2019-02-26T23:02:05Z | 1,079 | 445 | 92 | 1,616
|
||||
[v1.0.127](https://github.com/laurent22/joplin/releases/tag/v1.0.127) | 2019-02-14T23:12:48Z | 9,711 | 3,162 | 2,924 | 15,797
|
||||
[v1.0.126](https://github.com/laurent22/joplin/releases/tag/v1.0.126) | 2019-02-09T19:46:16Z | 924 | 65 | 114 | 1,103
|
||||
[v1.0.125](https://github.com/laurent22/joplin/releases/tag/v1.0.125) | 2019-01-26T18:14:33Z | 10,241 | 3,549 | 1,699 | 15,489
|
||||
[v1.0.125](https://github.com/laurent22/joplin/releases/tag/v1.0.125) | 2019-01-26T18:14:33Z | 10,242 | 3,549 | 1,699 | 15,490
|
||||
[v1.0.120](https://github.com/laurent22/joplin/releases/tag/v1.0.120) | 2019-01-10T21:42:53Z | 15,596 | 5,192 | 6,510 | 27,298
|
||||
[v1.0.119](https://github.com/laurent22/joplin/releases/tag/v1.0.119) | 2018-12-18T12:40:22Z | 8,898 | 3,254 | 2,011 | 14,163
|
||||
[v1.0.118](https://github.com/laurent22/joplin/releases/tag/v1.0.118) | 2019-01-11T08:34:13Z | 709 | 241 | 86 | 1,036
|
||||
[v1.0.117](https://github.com/laurent22/joplin/releases/tag/v1.0.117) | 2018-11-24T12:05:24Z | 16,245 | 4,885 | 6,377 | 27,507
|
||||
[v1.0.117](https://github.com/laurent22/joplin/releases/tag/v1.0.117) | 2018-11-24T12:05:24Z | 16,249 | 4,885 | 6,377 | 27,511
|
||||
[v1.0.116](https://github.com/laurent22/joplin/releases/tag/v1.0.116) | 2018-11-20T19:09:24Z | 3,466 | 1,114 | 711 | 5,291
|
||||
[v1.0.115](https://github.com/laurent22/joplin/releases/tag/v1.0.115) | 2018-11-16T16:52:02Z | 3,650 | 1,296 | 796 | 5,742
|
||||
[v1.0.114](https://github.com/laurent22/joplin/releases/tag/v1.0.114) | 2018-10-24T20:14:10Z | 11,388 | 3,490 | 3,827 | 18,705
|
||||
[v1.0.111](https://github.com/laurent22/joplin/releases/tag/v1.0.111) | 2018-09-30T20:15:09Z | 11,987 | 3,263 | 3,659 | 18,909
|
||||
[v1.0.111](https://github.com/laurent22/joplin/releases/tag/v1.0.111) | 2018-09-30T20:15:09Z | 11,988 | 3,269 | 3,659 | 18,916
|
||||
[v1.0.110](https://github.com/laurent22/joplin/releases/tag/v1.0.110) | 2018-09-29T12:29:21Z | 954 | 402 | 115 | 1,471
|
||||
[v1.0.109](https://github.com/laurent22/joplin/releases/tag/v1.0.109) | 2018-09-27T18:01:41Z | 2,094 | 698 | 325 | 3,117
|
||||
[v1.0.108](https://github.com/laurent22/joplin/releases/tag/v1.0.108) | 2018-09-29T18:49:29Z | 23 | 15 | 10 | 48
|
||||
[v1.0.107](https://github.com/laurent22/joplin/releases/tag/v1.0.107) | 2018-09-16T19:51:07Z | 7,143 | 2,129 | 1,704 | 10,976
|
||||
[v1.0.107](https://github.com/laurent22/joplin/releases/tag/v1.0.107) | 2018-09-16T19:51:07Z | 7,143 | 2,130 | 1,704 | 10,977
|
||||
[v1.0.106](https://github.com/laurent22/joplin/releases/tag/v1.0.106) | 2018-09-08T15:23:40Z | 4,551 | 1,451 | 314 | 6,316
|
||||
[v1.0.105](https://github.com/laurent22/joplin/releases/tag/v1.0.105) | 2018-09-05T11:29:36Z | 4,649 | 1,581 | 1,449 | 7,679
|
||||
[v1.0.104](https://github.com/laurent22/joplin/releases/tag/v1.0.104) | 2018-06-28T20:25:36Z | 15,031 | 4,690 | 7,304 | 27,025
|
||||
[v1.0.104](https://github.com/laurent22/joplin/releases/tag/v1.0.104) | 2018-06-28T20:25:36Z | 15,031 | 4,690 | 7,307 | 27,028
|
||||
[v1.0.103](https://github.com/laurent22/joplin/releases/tag/v1.0.103) | 2018-06-21T19:38:13Z | 2,046 | 880 | 677 | 3,603
|
||||
[v1.0.101](https://github.com/laurent22/joplin/releases/tag/v1.0.101) | 2018-06-17T18:35:11Z | 1,301 | 601 | 406 | 2,308
|
||||
[v1.0.100](https://github.com/laurent22/joplin/releases/tag/v1.0.100) | 2018-06-14T17:41:43Z | 873 | 426 | 236 | 1,535
|
||||
[v1.0.100](https://github.com/laurent22/joplin/releases/tag/v1.0.100) | 2018-06-14T17:41:43Z | 873 | 426 | 237 | 1,536
|
||||
[v1.0.99](https://github.com/laurent22/joplin/releases/tag/v1.0.99) | 2018-06-10T13:18:23Z | 1,248 | 591 | 377 | 2,216
|
||||
[v1.0.97](https://github.com/laurent22/joplin/releases/tag/v1.0.97) | 2018-06-09T19:23:34Z | 307 | 152 | 58 | 517
|
||||
[v1.0.96](https://github.com/laurent22/joplin/releases/tag/v1.0.96) | 2018-05-26T16:36:39Z | 2,713 | 1,218 | 1,534 | 5,465
|
||||
[v1.0.96](https://github.com/laurent22/joplin/releases/tag/v1.0.96) | 2018-05-26T16:36:39Z | 2,713 | 1,218 | 1,543 | 5,474
|
||||
[v1.0.95](https://github.com/laurent22/joplin/releases/tag/v1.0.95) | 2018-05-25T13:04:30Z | 411 | 213 | 113 | 737
|
||||
[v1.0.94](https://github.com/laurent22/joplin/releases/tag/v1.0.94) | 2018-05-21T20:52:59Z | 1,126 | 578 | 391 | 2,095
|
||||
[v1.0.93](https://github.com/laurent22/joplin/releases/tag/v1.0.93) | 2018-05-14T11:36:01Z | 1,783 | 1,044 | 754 | 3,581
|
||||
[v1.0.93](https://github.com/laurent22/joplin/releases/tag/v1.0.93) | 2018-05-14T11:36:01Z | 1,783 | 1,050 | 754 | 3,587
|
||||
[v1.0.91](https://github.com/laurent22/joplin/releases/tag/v1.0.91) | 2018-05-10T14:48:04Z | 823 | 545 | 302 | 1,670
|
||||
[v1.0.89](https://github.com/laurent22/joplin/releases/tag/v1.0.89) | 2018-05-09T13:05:05Z | 486 | 223 | 106 | 815
|
||||
[v1.0.85](https://github.com/laurent22/joplin/releases/tag/v1.0.85) | 2018-05-01T21:08:24Z | 1,646 | 944 | 626 | 3,216
|
||||
[v1.0.83](https://github.com/laurent22/joplin/releases/tag/v1.0.83) | 2018-04-04T19:43:58Z | 4,778 | 2,524 | 2,654 | 9,956
|
||||
[v1.0.83](https://github.com/laurent22/joplin/releases/tag/v1.0.83) | 2018-04-04T19:43:58Z | 4,784 | 2,525 | 2,654 | 9,963
|
||||
[v1.0.82](https://github.com/laurent22/joplin/releases/tag/v1.0.82) | 2018-03-31T19:16:31Z | 691 | 397 | 118 | 1,206
|
||||
[v1.0.81](https://github.com/laurent22/joplin/releases/tag/v1.0.81) | 2018-03-28T08:13:58Z | 998 | 593 | 779 | 2,370
|
||||
[v1.0.79](https://github.com/laurent22/joplin/releases/tag/v1.0.79) | 2018-03-23T18:00:11Z | 929 | 532 | 375 | 1,836
|
||||
[v1.0.79](https://github.com/laurent22/joplin/releases/tag/v1.0.79) | 2018-03-23T18:00:11Z | 929 | 532 | 376 | 1,837
|
||||
[v1.0.78](https://github.com/laurent22/joplin/releases/tag/v1.0.78) | 2018-03-17T15:27:18Z | 1,310 | 864 | 867 | 3,041
|
||||
[v1.0.77](https://github.com/laurent22/joplin/releases/tag/v1.0.77) | 2018-03-16T15:12:35Z | 173 | 101 | 44 | 318
|
||||
[v1.0.72](https://github.com/laurent22/joplin/releases/tag/v1.0.72) | 2018-03-14T09:44:35Z | 404 | 251 | 54 | 709
|
||||
[v1.0.70](https://github.com/laurent22/joplin/releases/tag/v1.0.70) | 2018-02-28T20:04:30Z | 1,852 | 1,045 | 1,250 | 4,147
|
||||
[v1.0.77](https://github.com/laurent22/joplin/releases/tag/v1.0.77) | 2018-03-16T15:12:35Z | 174 | 101 | 44 | 319
|
||||
[v1.0.72](https://github.com/laurent22/joplin/releases/tag/v1.0.72) | 2018-03-14T09:44:35Z | 404 | 252 | 54 | 710
|
||||
[v1.0.70](https://github.com/laurent22/joplin/releases/tag/v1.0.70) | 2018-02-28T20:04:30Z | 1,852 | 1,046 | 1,250 | 4,148
|
||||
[v1.0.67](https://github.com/laurent22/joplin/releases/tag/v1.0.67) | 2018-02-19T22:51:08Z | 1,813 | 598 | 0 | 2,411
|
||||
[v1.0.66](https://github.com/laurent22/joplin/releases/tag/v1.0.66) | 2018-02-18T23:09:09Z | 325 | 132 | 84 | 541
|
||||
[v1.0.66](https://github.com/laurent22/joplin/releases/tag/v1.0.66) | 2018-02-18T23:09:09Z | 325 | 132 | 85 | 542
|
||||
[v1.0.65](https://github.com/laurent22/joplin/releases/tag/v1.0.65) | 2018-02-17T20:02:25Z | 192 | 122 | 133 | 447
|
||||
[v1.0.64](https://github.com/laurent22/joplin/releases/tag/v1.0.64) | 2018-02-16T00:58:20Z | 1,083 | 541 | 1,123 | 2,747
|
||||
[v1.0.63](https://github.com/laurent22/joplin/releases/tag/v1.0.63) | 2018-02-14T19:40:36Z | 299 | 157 | 93 | 549
|
||||
[v1.0.62](https://github.com/laurent22/joplin/releases/tag/v1.0.62) | 2018-02-12T20:19:58Z | 557 | 295 | 366 | 1,218
|
||||
[v0.10.61](https://github.com/laurent22/joplin/releases/tag/v0.10.61) | 2018-02-08T18:27:39Z | 970 | 625 | 956 | 2,551
|
||||
[v1.0.62](https://github.com/laurent22/joplin/releases/tag/v1.0.62) | 2018-02-12T20:19:58Z | 557 | 295 | 367 | 1,219
|
||||
[v0.10.61](https://github.com/laurent22/joplin/releases/tag/v0.10.61) | 2018-02-08T18:27:39Z | 970 | 626 | 957 | 2,553
|
||||
[v0.10.60](https://github.com/laurent22/joplin/releases/tag/v0.10.60) | 2018-02-06T13:09:56Z | 720 | 517 | 552 | 1,789
|
||||
[v0.10.54](https://github.com/laurent22/joplin/releases/tag/v0.10.54) | 2018-01-31T20:21:30Z | 1,818 | 1,456 | 320 | 3,594
|
||||
[v0.10.52](https://github.com/laurent22/joplin/releases/tag/v0.10.52) | 2018-01-31T19:25:18Z | 45 | 629 | 15 | 689
|
||||
@ -125,20 +127,20 @@ Version | Date | Windows | macOS | Linux | Total
|
||||
[v0.10.43](https://github.com/laurent22/joplin/releases/tag/v0.10.43) | 2018-01-08T10:12:10Z | 3,436 | 2,349 | 1,205 | 6,990
|
||||
[v0.10.41](https://github.com/laurent22/joplin/releases/tag/v0.10.41) | 2018-01-05T20:38:12Z | 1,035 | 1,545 | 237 | 2,817
|
||||
[v0.10.40](https://github.com/laurent22/joplin/releases/tag/v0.10.40) | 2018-01-02T23:16:57Z | 1,593 | 1,783 | 338 | 3,714
|
||||
[v0.10.39](https://github.com/laurent22/joplin/releases/tag/v0.10.39) | 2017-12-11T21:19:44Z | 5,742 | 4,218 | 3,120 | 13,080
|
||||
[v0.10.39](https://github.com/laurent22/joplin/releases/tag/v0.10.39) | 2017-12-11T21:19:44Z | 5,753 | 4,226 | 3,128 | 13,107
|
||||
[v0.10.38](https://github.com/laurent22/joplin/releases/tag/v0.10.38) | 2017-12-08T10:12:06Z | 1,047 | 1,227 | 306 | 2,580
|
||||
[v0.10.37](https://github.com/laurent22/joplin/releases/tag/v0.10.37) | 2017-12-07T19:38:05Z | 263 | 841 | 81 | 1,185
|
||||
[v0.10.36](https://github.com/laurent22/joplin/releases/tag/v0.10.36) | 2017-12-05T09:34:40Z | 1,013 | 1,352 | 437 | 2,802
|
||||
[v0.10.35](https://github.com/laurent22/joplin/releases/tag/v0.10.35) | 2017-12-02T15:56:08Z | 1,575 | 1,544 | 744 | 3,863
|
||||
[v0.10.34](https://github.com/laurent22/joplin/releases/tag/v0.10.34) | 2017-12-02T14:50:28Z | 88 | 666 | 59 | 813
|
||||
[v0.10.33](https://github.com/laurent22/joplin/releases/tag/v0.10.33) | 2017-12-02T13:20:39Z | 59 | 655 | 21 | 735
|
||||
[v0.10.31](https://github.com/laurent22/joplin/releases/tag/v0.10.31) | 2017-12-01T09:56:44Z | 890 | 1,446 | 406 | 2,742
|
||||
[v0.10.31](https://github.com/laurent22/joplin/releases/tag/v0.10.31) | 2017-12-01T09:56:44Z | 890 | 1,447 | 406 | 2,743
|
||||
[v0.10.30](https://github.com/laurent22/joplin/releases/tag/v0.10.30) | 2017-11-30T20:28:16Z | 721 | 1,365 | 419 | 2,505
|
||||
[v0.10.28](https://github.com/laurent22/joplin/releases/tag/v0.10.28) | 2017-11-30T01:07:46Z | 1,325 | 1,696 | 872 | 3,893
|
||||
[v0.10.26](https://github.com/laurent22/joplin/releases/tag/v0.10.26) | 2017-11-29T16:02:17Z | 185 | 697 | 260 | 1,142
|
||||
[v0.10.25](https://github.com/laurent22/joplin/releases/tag/v0.10.25) | 2017-11-24T14:27:49Z | 147 | 692 | 6,278 | 7,117
|
||||
[v0.10.25](https://github.com/laurent22/joplin/releases/tag/v0.10.25) | 2017-11-24T14:27:49Z | 147 | 692 | 6,300 | 7,139
|
||||
[v0.10.23](https://github.com/laurent22/joplin/releases/tag/v0.10.23) | 2017-11-21T19:38:41Z | 131 | 643 | 27 | 801
|
||||
[v0.10.22](https://github.com/laurent22/joplin/releases/tag/v0.10.22) | 2017-11-20T21:45:57Z | 83 | 641 | 18 | 742
|
||||
[v0.10.21](https://github.com/laurent22/joplin/releases/tag/v0.10.21) | 2017-11-18T00:53:15Z | 50 | 634 | 12 | 696
|
||||
[v0.10.20](https://github.com/laurent22/joplin/releases/tag/v0.10.20) | 2017-11-17T17:18:25Z | 31 | 645 | 21 | 697
|
||||
[v0.10.19](https://github.com/laurent22/joplin/releases/tag/v0.10.19) | 2017-11-20T18:59:48Z | 14 | 638 | 12 | 664
|
||||
[v0.10.19](https://github.com/laurent22/joplin/releases/tag/v0.10.19) | 2017-11-20T18:59:48Z | 14 | 639 | 12 | 665
|
Loading…
Reference in New Issue
Block a user