A VS Code extension that provides LSP functionality for Kaocha / Cucumber .feature files in Clojure projects.
Terminology
- Gherk — a human-readable Gherkin step in a
.featurefile (Given/When/Then/And/But) - Cuke — the Clojure step definition that implements a Gherk
Features
- Go to Definition — navigate from a Gherk step in a
.featurefile to the matching Clojure step definition - Find References — navigate from a Clojure step definition to all
.featurefile steps that match it - Diagnostics — warnings on Gherk steps that have no matching Clojure definition, and parse error reporting for malformed
.featurefiles - Debounced updates — changes are processed after a 500 ms idle period to avoid unnecessary re-parsing while you type
Configuration
| Setting | Type | Default | Description |
|---|---|---|---|
picklj.cukeSrcInclude |
string[] |
["test/"] |
Directories to search for Clojure step definitions |
picklj.cukeSrcExclude |
string |
[] |
Glob patterns to exclude from the search |
Development
npm install # installs root, client, and server dependencies
npm run compile # build client and server
npm run watch # build in watch mode
npm run test # run tests with vitest
npm run lint # lint with Biome
npm run lint:fix # lint and auto-fix
npm run package # package as .vsix