diff options
Diffstat (limited to 'vscode/packages/client/src/features/defaultSettings.ts')
-rw-r--r-- | vscode/packages/client/src/features/defaultSettings.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/vscode/packages/client/src/features/defaultSettings.ts b/vscode/packages/client/src/features/defaultSettings.ts new file mode 100644 index 000000000..ec3de70a1 --- /dev/null +++ b/vscode/packages/client/src/features/defaultSettings.ts @@ -0,0 +1,30 @@ +import * as vscode from 'vscode'; + +export async function activate() { + onConfigUpdated(); + + vscode.workspace.onDidChangeConfiguration(onConfigUpdated); + + function onConfigUpdated() { + const astro = vscode.extensions.getExtension('skypack.astro'); + if (!astro) { + return; + } + const emmet = vscode.extensions.getExtension('vscode.emmet'); + if (!emmet) { + return; + } + + const emmetIncludeLanguages = getEmmetIncludeLanguages(); + if (emmetIncludeLanguages && emmetIncludeLanguages['astro']) { + return; + } + setEmmetIncludeLanguages({ ...emmetIncludeLanguages, astro: 'html' }); + } + function getEmmetIncludeLanguages() { + return vscode.workspace.getConfiguration('emmet').get<Record<string, string>>('includeLanguages'); + } + function setEmmetIncludeLanguages(value: Record<string, string>) { + return vscode.workspace.getConfiguration('emmet').set('includeLanguages', value); + } +} |