You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> The extension includes default settings that you might want to change. See the [configuration guide](https://hverlin.github.io/mise-vscode/tutorials/settinguptheextension/) to customize your setup.
36
+
> The extension includes default settings that you might want to change. See the [configuration guide](https://hverlin.github.io/mise-vscode/tutorials/settinguptheextension/) to customize your set-up.
37
+
> For example, you can choose to disable automatic configuration of other extensions or change the path to the `mise` binary.
38
+
>
39
+
> You can access the settings by clicking on the mise extension indicator in the status bar.
37
40
38
41
## ✨ Features
39
42
@@ -62,7 +65,7 @@ The mise-vscode extension integrates mise's core functionality into VS Code, hel
62
65
- 📱 Show tools which are not installed or active
63
66
- 📦 Install/Remove/Use tools directly from the sidebar
64
67
- 🔧 Configure your other VSCode extensions to use tools provided by `mise`
65
-
([list of supported extensions](https://hverlin.github.io/mise-vscode/reference/supported-extensions/))
68
+
([list of supported extensions](https://hverlin.github.io/mise-vscode/reference/supported-extensions/)). See the [set-up guide](https://hverlin.github.io/mise-vscode/tutorials/settinguptheextension/) for more information.
Everything should work if your `mise` setup is standard. Read the next section on [how to customize the extension to your needs](/mise-vscode/tutorials/settinguptheextension/).
28
+
Everything should work out of the box if your `mise` setup is standard.
29
+
Read the next section on [how to customize the extension to your needs](/mise-vscode/tutorials/settinguptheextension/).
Copy file name to clipboardExpand all lines: docs/src/content/docs/tutorials/SettingUpTheExtension.mdx
+59-1Lines changed: 59 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,10 +35,68 @@ However, there are some challenges with sharing `.vscode/settings.json`:
35
35
36
36
Ideally, VS Code should support a `settings.local.json` file that would be ignored by git. See [this issue](https://github.com/microsoft/vscode/issues/40233) for more information.
37
37
38
-
If you want to share some settings with others, a good workaround is to create a `settings.shared.json` file that other can use as a reference. You can also create a `mise` task to populate the `settings.json` file with the content of `settings.shared.json` if needed.
38
+
If you want to share some settings with others, here are some good workarounds:
39
+
- Git ignore the `.vscode/settings.json` file. Create a `settings.shared.json` file that other can use as a reference. Set up a `mise` task to populate your `settings.json` file with the content of `settings.shared.json` if needed.
40
+
- Use extension such as [workspace-config-plus](https://github.com/swellaby/vscode-workspace-config-plus) to have a `settings.local.json` file that is ignored by git.
39
41
40
42
</details>
41
43
44
+
#### Controlling which extensions are configured automatically
45
+
46
+
You can control which supported extensions are automatically configured by mise-vscode using the following settings in your VS Code settings (user or workspace):
47
+
48
+
-[`mise.configureExtensionsAutomaticallyIgnoreList`](/mise-vscode/reference/settings/#miseconfigureextensionsautomaticallyignorelist): List of extensions that should **not** be configured automatically.
49
+
-[`mise.configureExtensionsAutomaticallyIncludeList`](/mise-vscode/reference/settings/#miseconfigureextensionsautomaticallyincludelist): List of extensions that **should** be configured automatically.
50
+
51
+
**How it works:**
52
+
- If the **include** list is set and non-empty, only extensions in this list are considered for automatic configuration.
53
+
- If both **include** and **ignore** lists are set, the ignore list takes precedence (extensions in the ignore list are always excluded).
54
+
- If the **include** list contains `"all"`, all supported extensions are considered (except those in the ignore list).
55
+
- If the **include** list is empty or not set, no extensions are configured automatically, and the extension will not modify your `.vscode/settings.json` file.
56
+
- If [`mise.configureExtensionsAutomatically`](/mise-vscode/reference/settings/#miseconfigureextensionsautomatically) is set to `false`, no extensions will be configured automatically, regardless of the include or ignore lists.
57
+
58
+
You can find the full list of supported extensions in the [Supported Extensions](/mise-vscode/reference/supported-extensions/) documentation.
This will configure only Python and Go extensions, and will always ignore Deno, even if it is in the include list.
70
+
71
+
#### Advanced: Fine-grained control with user and workspace settings
72
+
73
+
You can take advantage of VS Code's user and workspace settings to control which extensions are configured automatically at different levels.
74
+
For example, you can set a global default at the **user** level and then override it at the **workspace** level for specific projects.
75
+
76
+
This allows you to have a flexible setup where you can control which extensions are configured automatically based on your needs.
77
+
78
+
To do this, set the `mise.configureExtensionsAutomaticallyIncludeList` to an empty array at the **user** level, and then specify the desired extensions at the **workspace** level in your `.vscode/settings.json` file.
With this setup, only the deno extensions will be configured automatically for your project. However, if you open another project that does not specify the `mise.configureExtensionsAutomaticallyIncludeList`, no extensions will be configured automatically.
97
+
98
+
**Note that updating this setting might require you to reload the VS Code window for the changes to take effect.**
99
+
42
100
### Automatic loading of environment variables
43
101
44
102
The extension will load the environment variables provided by `mise` and update the VS Code process with them.
"markdownDescription": "List of extensions that should be configured automatically. If both include and ignore lists are set, the ignore list takes precedence. If the include list includes 'all' (default), all supported extensions are considered except those in the ignore list."
0 commit comments