⌨️ System wide shortcuts for creating quick new notes

Description

An Espanso package named Joplin Shortcuts (or Jops) allows creating quick notes without the need to focus on Joplin window. It helps to streamline note-taking process and avoid disruption of your workflow.

Main features

  • :jop initiate the plugin: authorization of the plugin + setting up default notebook via external link
  • :mn make new note
  • :mt make new todo
  • :ct creating new todo from clipboard

How to install

  1. Install espanso
  2. in terminal run espanso install jops
  3. Enable Joplin's Web Clipper service
  4. Type:jop anywhere (not only in text fields) and press Grant authorization in Joplin. Optionally you can provide external link of the notebook of choice where your quick notes will land.

Usage

  1. Make sure Joplin and espanso are running
  2. Type :mn to create your first quick note

Other considerations

  • Shortcut won't launch Joplin if it isn't running, hence you should start it beforehand
  • Due to the fact the shortcut written in bash, for now it's supported only on Linux and macOS but can be easily ported to WSL2 for Windows. If you want to port it to native Windows powershell and need help, drop me a line

Known issues

  • :ct can't save more than one line of text
  • :ct can't handle ' symbols in clipboard
  • :mn/:mt trim ' symbols by default

External links

Espanso - A Privacy-first, Cross-platform Text Expander
jops github repo
Joplin Shortcut | Espanso Hub

8 Likes

Interesting, I didn't know Espanso existed. Its strong point is its cross-platform support.
On Windows, I use AutoHotkey for years to do this kind of stuff. But its odd language gets some time to be mastered (although for simple tasks like this, it isn't that hard).
Thanks for sharing.

1 Like

This seems like a very interesting idea but I can not get it to work.

Joplin 2.9.17 on macOS Ventura 13.2 M1

Joplin is running but trying to initiate the plugin just results in the following text being inserted in my last used note:

"occurred during rendering, please examine the logs for more information"

Did you initiate the package by typing :jop beforehand (don't forget to grant authorization as well)?

What does it show when you type espanso log after error appear?

Hello @graphit0

I did try to initiate the package by typing :jop but after clicking "Submit" nothing happens in Joplin. It does not ask about authorization.

espanso log says:

08:59:59 [worker(22371)] [ERROR] shell command exited with code: exit status: 1 and error: zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid

08:59:59 [worker(22371)] [WARN] extension 'shell' on var: 'parentsave' reported an error: command reported error: '`zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid
`'
08:59:59 [worker(22371)] [ERROR] error during rendering: rendering error

Caused by:
    command reported error: '`zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid
    `'

Have you set up a default notebook (by pasting its external link in :jop dialogue)? If not yet, try to do so please

Still no go.

Log output:

10:03:57 [worker(22371)] [ERROR] shell command exited with code: exit status: 1 and error: zsh:1: no matches found: joplin://x-callback-url/openFolder?id=removedforsecurityreasons
zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid

10:03:57 [worker(22371)] [WARN] extension 'shell' on var: 'parentsave' reported an error: command reported error: '`zsh:1: no matches found: joplin://x-callback-url/openFolder?id=removedforsecurityreasons
zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid
`'
10:03:57 [worker(22371)] [ERROR] error during rendering: rendering error

Caused by:
    command reported error: '`zsh:1: no matches found: joplin://x-callback-url/openFolder?id=removedforsecurityreasons
    zsh:1: no such file or directory: /Users/username/.config/Joplin/.parentid