How to change editor to vim in mac os?

when I click on Joplin and navigate to preferences, my options are:
general options, encryption options and web clipper.
From the faq it says I can change to vim as my external editor if I go to settings.

How do I get to settings?

Found the answer:
joplin > preferences > general options > text editor command.

Could the mods please add this to the faq when time permits

I’m not sure what you want us to add to the FAQ. Can you be a bit more specific?

Setting the editor is literally the 4th option in the preferences. As a macOS user you know that opening settings/preferences/options is Cmd + ,.

I think he meant that we call that Settings in the FAQ but it’s called Preferences in the UI. I’ve updated the FAQ to fix this.

Hmm, Preferences is only available on macOS. On Windows all the options items are in the Tools menu and there’s no Settings menu item at all. I think it is common sense that the term settings refers to either a menu item that is called settings, configuration, config, preferences, options, or general options.
I hope this is not too harsh, but if someone has used a computer before this much should be clear.

I mean you don’t put 2+2=4 into a FAQ.

It’s mostly about being consistent. Maybe we should try to unify the menu item names so that, for example, they are all called Preferences. I agree it’s not a massive issue though.

I’m not sure, if I can agree with that. On macOS people are used to Preferences... and Quit <Appname here>. On Windows people are used to Settings and Exit.
The menu changes were done specifically to make it look more like an macOS app. I doubt that Windows users would like the same menu structure, but maybe I am wrong.

H Tessus,
I agree that in that users should know to navigate to the text editor command. But we should be as specific as possible. For example, I just switched from windows to mac a week ago and installed Joplin. It took me a little time to go to joplin > preferences > general options then the text editor.
It’s the little things that make a big difference at the end of the day.

Maybe in the FAQ, macos and windows can be specified. For example, preferences > general options > text editor command (mac os).
Similar for windows

Anyways, amazing app and will recommend to all my peers.

thanks,

Yes I think we should group all the settings under one menu item and just use tabs (like on Firefox) to go to the General settings, E2EE settings, etc. I think that would make it a bit less confusing to have just one entry point for all this, and that way we also won’t need sub-menus on macOS for this.

Hello. I have a similar question. Setting the external editor path to ‘/usr/bin/vim’, or just, ‘vim’, in the desktop preferences doesn’t do the trick for me. Vim’s in the path and works everywhere else. How would you configure vim as the external editor on Mac OS?

Thanks,
Seth

OS: Mac 11.1
Joplin Version: Joplin 1.6.6 (prod, darwin)

Has anyone sorted this. I was tempted to put on a new thread. I have googled and tried a bunch, but I can't get vim to work as my editor for Joplin on my Mac. Nothing happens.

By entering: /System/Applications/Utilities/Terminal.app I can get it to open a the terminal, but no arguments I enter get it to edit the file in VIM.

Thanks in advance for any help.

1 Like

Have to install MacVim (installed via brew) is the only way I can get this to work.

Path: open
Arguments: -a /usr/local/Cellar/macvim/8.2-171_1/MacVim.app

I also want to configure Neovim as an external editor under macOS.

For the moment, I have not managed to configure this in Joplin.

I sorted this on MacOS Sonoma 14, Joplin 3.0.15 (prod, darwin).

  1. created a script joplin-vim-external.sh
  2. made it executable with chmod +x joplin-vim-external.sh
  3. provided absolute path to this file in Joplin "Path". Left "Arguments" empty.

Contents of the script:

#!/bin/bash
osascript <<EOF
tell application "Terminal"
    do script "vim '$1'"
    activate
end tell
EOF

Improved version that closes the window when vim is closed:

#!/bin/bash
osascript <<EOF
tell application "Terminal"
    do script "vim '$1'; exit"
    activate
    delay 5
    set win to the front window
    repeat while busy of win is true
        delay 0.5
    end repeat
    close win
end tell
EOF