From e3942e89e42f3ad9e35728def87db74941acde2a Mon Sep 17 00:00:00 2001 From: Brad Cornes Date: Fri, 4 Jun 2021 14:00:00 +0100 Subject: [PATCH] add `inspectPort` setting --- packages/vscode-tailwindcss/package.json | 8 ++++++++ packages/vscode-tailwindcss/src/extension.ts | 19 ++++++++++++++----- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/vscode-tailwindcss/package.json b/packages/vscode-tailwindcss/package.json index 4f8b387..d24d92f 100755 --- a/packages/vscode-tailwindcss/package.json +++ b/packages/vscode-tailwindcss/package.json @@ -180,6 +180,14 @@ "type": "number", "default": 16, "markdownDescription": "Root font size in pixels. Used to convert `rem` CSS values to their `px` equivalents. See `#tailwindCSS.showPixelEquivalents#`." + }, + "tailwindCSS.inspectPort": { + "type": [ + "number", + "null" + ], + "default": null, + "markdownDescription": "Enable the Node.js inspector agent for the language server and listen on the specified port." } } } diff --git a/packages/vscode-tailwindcss/src/extension.ts b/packages/vscode-tailwindcss/src/extension.ts index 6275637..b7d49a5 100755 --- a/packages/vscode-tailwindcss/src/extension.ts +++ b/packages/vscode-tailwindcss/src/extension.ts @@ -179,8 +179,19 @@ export async function activate(context: ExtensionContext) { commands.executeCommand('setContext', 'tailwindCSS.hasOutputChannel', true) } + let configuration = { + editor: Workspace.getConfiguration('editor', folder), + tailwindCSS: Workspace.getConfiguration('tailwindCSS', folder), + } + + let inspectPort = configuration.tailwindCSS.get('inspectPort') + let serverOptions: ServerOptions = { - run: { module, transport: TransportKind.ipc }, + run: { + module, + transport: TransportKind.ipc, + options: { execArgv: inspectPort === null ? [] : [`--inspect=${inspectPort}`] }, + }, debug: { module, transport: TransportKind.ipc, @@ -189,6 +200,7 @@ export async function activate(context: ExtensionContext) { }, }, } + let clientOptions: LanguageClientOptions = { documentSelector: languages.get(folder.uri.toString()).map((language) => ({ scheme: 'file', @@ -314,10 +326,7 @@ export async function activate(context: ExtensionContext) { }, initializationOptions: { userLanguages: getUserLanguages(folder), - configuration: { - editor: Workspace.getConfiguration('editor', folder), - tailwindCSS: Workspace.getConfiguration('tailwindCSS', folder), - }, + configuration, }, synchronize: { configurationSection: ['editor', 'tailwindCSS'],