Skip to content
Find locally installed executables by npm, composer, gem, pip, stack, ...
Emacs Lisp
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
find-local-executable.el

README.md

find-local-executable

Find executables installed locally by npm, yarn, composer, stack, pip, gem...

Motivation

When we use packages like flycheck, company, lsp we often install the tools locally in a specific version using a package manager. These packages often only look for a globally installed executable which might not be what we want.

Usage

This package provides a uniform interface for setting up paths to executables installed locally (meaning not system-wide).

To find the flow binary installed by npm or yarn, use

(find-local-executable-nodejs "flow")

You can substitute "flow" with any binray you want.

The general pattern is:

(defun find-local-executable-PLATFORM (binary &optional use-global-fallback))

On top of that, we support many popular packages out of the box. For example, to set up paths for packages relying on "flow" in nodejs, use:

(find-local-executable-nodejs-setup-flow)

This will configure paths for (among others)

company-flow-executable
flow-minor-default-binary
flycheck-javascript-flow-coverage-executable
flycheck-javascript-flow-executable
lsp-clients-flow-server

The general pattern is

(defun find-local-executable-PLATFORM-setup-BINARY ())

Following is an exhaustive list of supported platforms. If you don't see your favorite platform, please open an issue or even better submit a pull request!

Supported platforms

nodejs [via npm, yarn]

Binary:

(find-local-executable-nodejs BINARY)

Supported binaries:

(find-local-executable-nodejs-setup-flow)
(find-local-executable-nodejs-setup-eslint)

typescript [via npm, yarn]

Binary:

(find-local-executable-typescript BINARY)

Supported binaries:

(find-local-executable-typescript-setup-tslint)

php [via composer]

Binary:

(find-local-executable-php BINARY)

Supported binaries:

(find-local-executable-php-setup-phpstan)
(find-local-executable-php-setup-phpcs)
You can’t perform that action at this time.