3.2 KiB
Setup
-
Clone microsoft/vscode
-
Run
npm i
at/
, this will install- Dependencies for
/extension/css-language-features/
- Dependencies for
/extension/css-language-features/server/
- devDependencies such as
gulp
- Dependencies for
-
Open
/extensions/css-language-features/
as the workspace in VS Code -
In
/extensions/css-language-features/
runnpm run compile
(ornpm run watch
) to build the client and server -
Run the
Launch Extension
debug target in the Debug View. This will:- Launch a new VS Code instance with the
css-language-features
extension loaded
- Launch a new VS Code instance with the
-
Open a
.css
file to activate the extension. The extension will start the CSS language server process. -
Add
"css.trace.server": "verbose"
to the settings to observe the communication between client and server in theCSS Language Server
output. -
Debug the extension and the language server client by setting breakpoints in
css-language-features/client/
-
Debug the language server process by using
Attach to Node Process
command in the VS Code window opened oncss-language-features
.- Pick the process that contains
cssServerMain
in the command line. Hover overcode-insiders
respcode
processes to see the full process command line. - Set breakpoints in
css-language-features/server/
- Pick the process that contains
-
Run
Reload Window
command in the launched instance to reload the extension
Contribute to vscode-css-languageservice
microsoft/vscode-css-languageservice contains the language smarts for CSS/SCSS/Less. This extension wraps the css language service into a Language Server for VS Code. If you want to fix CSS/SCSS/Less issues or make improvements, you should make changes at microsoft/vscode-css-languageservice.
However, within this extension, you can run a development version of vscode-css-languageservice
to debug code or test language features interactively:
Linking vscode-css-languageservice
in css-language-features/server/
- Clone microsoft/vscode-css-languageservice
- Run
npm i
invscode-css-languageservice
- Run
npm link
invscode-css-languageservice
. This will compile and linkvscode-css-languageservice
- In
css-language-features/server/
, runnpm link vscode-css-languageservice
Testing the development version of vscode-css-languageservice
- Open both
vscode-css-languageservice
and this extension in a single workspace with multi-root workspace feature - Run
npm run watch
invscode-css-languageservice
to recompile the extension whenever it changes - Run
npm run watch
atcss-language-features/server/
to recompile this extension with the linked version ofvscode-css-languageservice
- Make some changes in
vscode-css-languageservice
- Now when you run
Launch Extension
debug target, the launched instance will use your development version ofvscode-css-languageservice
. You can interactively test the language features.