Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>clickmakeNew to Visual Studio Code? Get it now.
clickmake

clickmake

eddie2072

|
5 installs
| (0) | Free
Run makefiles from within the editor by clicking on target
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

clickmake

This extension allows you to run a Makefile target from within the editor by clicking above the target. It will execute the following command in the terminal:

make -C "${makefileDir}" -f ${filename} ${target}
  • makefileDir - the directory of the Makefile that is being edited
  • filename - file where you clicked the TARGET
  • target - the text found using the following logic:
    • any line starting with an alphabeticnumeric string followed by a colon and not including =

make -C is used to change directory (instead of a shell cd ... && ...) so the command works in shells that do not support &&, such as nushell.

Features

screenshot

Requirements

  • Tested on vscode 1.72.2

Extension Settings

  • clickmake.enabled (boolean, default true) — enable or disable processing of Makefiles.
  • clickmake.parser ("split" | "fsm", default "split") — which parsing implementation to use:
    • split — simple line-split parser. Readable and fast enough for normal Makefiles.
    • fsm — single-pass scanner. ~3x faster on very large files, with identical output.

CodeLenses are cached per document and only recomputed after the file is saved (or when configuration changes), so editing does not re-parse on every keystroke.

Development

Parsing lives in src/MakefileParser.ts as pure, vscode-independent functions, so it can be unit/perf/fuzz tested without launching VSCode.

npm run test:unit   # unit + fuzz + cross-implementation equivalence tests (mocha, no electron)
npm run bench       # split vs fsm micro-benchmark (bun)
npm run test        # full integration tests (launches VSCode via @vscode/test-electron)

Known Issues

  • Command executed and the text displayed above the target are not yet configurable.

Release Notes

0.4.2

  • CodeLenses are now cached and only recomputed on save instead of on every keystroke
  • Parsing extracted into a pure, testable module with unit / fuzz / benchmark coverage
  • Added clickmake.parser setting to choose between the split (default) and fsm parsers
  • Line endings now handled robustly (\r\n, \n, and lone \r)
  • Removed unimplemented settings (cacheSize, commandTemplate, titleTemplate)

Contributing

Feedback and pull requests are welcomed.

Following extension guidelines

Ensure that you've read through the extensions guidelines and follow the best practices for creating extensions.

  • Extension Guidelines
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft