Set snap Typora as external editor for snap Joplin

Version: Joplin 2.1.7 (prod, linux)
OS: Kubuntu 21.04

I referred to the solutions in How to use external editor? - #6 by Steffimania but they only discuss flatpak and not snap. Is it possible for me to set snap Typora as an external editor? I don't know what to enter for path and arguments. I've tried to guess it by entering 'snap run' etc but gave up after a few combinations.

The only value for the external editor in snap that really makes sense is /bin/xdg-open or empty, which is implicitly the same thing, in the future I might patch it so that the interface doesn't give the illusion of choice. xdg-open calls the XDG Desktop Portals that asks you to select an editor. These portals read .desktop files and show options based on matching MimeType's.

  1. Does attempting to use an external editor open any options at all, usually Gedit (or maybe Knowte being KDE) or something will appear as a choice, or an app will open directly. If it doesn't, you likely need sudo apt install xdg-desktop-portal-kde though I'd assume that this is a default package. This assumes the external editor values are empty.
  2. Does Typora have a desktop icon for itself? If so, modify it/load another .desktop file with high priority so it claims to support markdown files. If not, make one locally so that it appears as an option in the dropdown.
  3. If Typora is itself a snap, it has a .desktop file for me that made it automatically work with the external editor functionality; but it fails to actually open the file due to other snap related reasons. You'd need to sudo snap install typora --devmode to disable its sandboxing if you really wanted the snap version to work, but any other installation method is probably ok. Using devmode does disable automatic updates for that specific snap however.

You can try overriding Typora's .desktop file, or if it hasn't got one currently, make one; with something similar to

cat > ~/.local/share/applications/typora.desktop << EOF
[Desktop Entry]
Type=Application
StartupNotify=true
Terminal=false
Name=Typora
GenericName=Markdown Editor
Comment=A minimal Markdown reading and writing app
Categories=Office;WordProcessor;
MimeType=text/markdown;text/x-markdown;
Icon=typora
Exec=typora %U
EOF

Otherwise, there's no reason you couldn't just use the Flatpak. The data is afterall interoperable, just make an export of your Joplin data and import it into the Flatpak, where you'd be able to use flatpak-spawn.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.