urso
urso

Reputation: 934

Find path of an executable in vim

On some machines I'm using an external executable to format text (it's named 'par'). Therefore I'd like to detect if the executable is installed.

Edit: I just want to detect if the executable is available in my .vimrc itself. So I prefer internal functions over external utils like 'which'. Prince Goulash's solution is already very helpful and I'm going with it, despite I'd prefer finding the exact path. Thanks.

Upvotes: 11

Views: 5554

Answers (3)

Prince Goulash
Prince Goulash

Reputation: 15735

You can use the vimscript function executable(), which returns 1 if its argument exists and is executable, and 0 otherwise. It doesn't return the path of the file, though. See help executable for more info.

Upvotes: 17

gpojd
gpojd

Reputation: 23075

In linux, I'd use which:

:!which par

If you want to put it into the file, try this:

:r !which par

Edit: Actually, hash might be the better tool to use.

Upvotes: 4

diagonalbatman
diagonalbatman

Reputation: 18002

in unix...

whereis par

should return a path, if it is executable by the current user

Upvotes: 0

Related Questions