Dynamic Workspace ExtensionThis extension allows users to develop workspace specific vscode integration without creating a fully new extension. To achieve this, the extension dynamically loads typescript code from the opened workspace folders and runs them in the extension context. This allows users of this extension to implement workspace-specific IDE extensions, which might especially be helpful when working with mono repositories. There are some caveats, though. Please consider the remarks below before using this Security WarningPlease only use this extension if you trust all authors of your workspaces. As this extensions executes workspace code on startup of vs code, untrusted code might be malicious. We only execute any plugins in a workspace if the user has set that workspace to trusted. How does the extension work?This extension loads plugins, written in typescript, directly from the opened workspace folders and runs them in the extension context. PluginsWhen activated, the extension uses the
If any of these paths exist and contain a Plugin themselves are structured similarly to VS Code extensions, see the example below. ActivationWhen this extension gets activated, it forwards the extension context to all plugins. Plugins are automatically re-activated when their source code changes. This can also be triggered manually with the When (not) to useThis extension is meant to only be used for implementing IDE functionality that is specific to only you workspace. There are many limitations when using this extension, due to the fact that plugins are not fully fledged extensions. Please consider createing an actual VS Code extension if that is possible for you. Example usage:This example demonstrates how to work with this extension. It simply displays a warning message in vs code when activated. Let Create the following files:
Then add
to your workspace settings. src/plugin.tsThis file is the main entry point.
package.json
tsconfig.json
Licenses:Icons made by Freepik from www.flaticon.com
|