A package to recommend Sherlock
npm install @inlang/recommend-sherlock- Check for Existing Recommendations: Quickly verify if an extension is already recommended in the workspace's .vscode/extensions.json file.
- Add New Recommendations: Automatically add new recommendations to the .vscode/extensions.json file if they are not already present.
Put this one into your dependencies in package.json & install it with pnpm install:
``bash`
"@inlang/recommend-sherlock": "workspace:*"
The module exports two main asynchronous functions:
Checks whether the inlang.vs-code-extension is recommended in the workspace.
#### Parameters
- fs: A NodeishFilesystem object to interact with the file system.workingDirectory
- : (Optional) The working directory path.
#### Returns
- Promise: true if the extension is recommended, false otherwise.
Adds the inlang.vs-code-extension recommendation to the workspace if it's not already present.
#### Parameters
- fs: A NodeishFilesystem object to interact with the file system.workingDirectory
- : (Optional) The working directory path.
`typescript
import { shouldRecommend, add } from '@inlang/recommend-sherlock';
import { NodeishFilesystem } from '@lix-js/fs';
async function addSherlock(fs: NodeishFilesystem) {
const isExtensionAdopted = await shouldRecommend(fs);
if (!isExtensionAdopted) {
// prompt for user confirmation
const userConfirmed = await promptUser();
if (userConfirmed) {
await add(fs);
console.log('Extension recommendation added.');
} else {
console.log('User declined to add extension recommendation.');
}
}
}
``
Contributions are welcome! If you have a feature request, bug report, or proposal, please open an issue or submit a pull request. Our Discord can be found here.