| .. | ||
| docs | ||
| lib | ||
| .editorconfig | ||
| .eslintrc.json | ||
| .prettierrc.json | ||
| CHANGELOG.md | ||
| LICENSE.md | ||
| package.json | ||
| README.md | ||
| thirdpartynotices.txt | ||
vscode-html-languageservice
HTML language service extracted from VSCode to be reused, e.g in the Monaco editor.
Why?
The vscode-html-languageservice contains the language smarts behind the HTML editing experience of Visual Studio Code and the Monaco editor.
-
doComplete / doComplete2 (async) provide completion proposals for a given location.
-
setCompletionParticipants allows participant to provide suggestions for specific tokens.
-
doHover provides hover information at a given location.
-
format formats the code at the given range.
-
findDocumentLinks finds all links in the document.
-
findDocumentSymbols finds all the symbols in the document.
-
getFoldingRanges return folding ranges for the given document.
-
getSelectionRanges return the selection ranges for the given document. ...
For the complete API see htmlLanguageService.ts and htmlLanguageTypes.ts
Installation
npm install --save vscode-html-languageservice
Development
- clone this repo, run yarn
yarn testto compile and run tests
How can I run and debug the service?
- open the folder in VSCode.
- set breakpoints, e.g. in
htmlCompletion.ts - run the Unit tests from the run viewlet and wait until a breakpoint is hit:

How can I run and debug the service inside an instance of VSCode?
- run VSCode out of sources setup as described here: https://github.com/Microsoft/vscode/wiki/How-to-Contribute
- link the folder of the
vscode-html-languageservicerepo tovscode/extensions/html-language-features/serverto run VSCode with the latest changes from that folder:- cd
vscode-html-languageservice,yarn link - cd
vscode/extensions/html-language-features/server,yarn link vscode-html-languageservice
- cd
- run VSCode out of source (
vscode/scripts/code.sh|bat) and open a.htmlfile - in VSCode window that is open on the
vscode-html-languageservicesources, run commandDebug: Attach to Node processand pick thecode-ossprocess with thehtml-language-featurespath
- set breakpoints, e.g. in
htmlCompletion.ts - in the instance run from sources, invoke code completion in the
.htmlfile
License
(MIT License)
Copyright 2016-2020, Microsoft
With the exceptions of data/*.json, which is built upon content from Mozilla Developer Network
and distributed under CC BY-SA 2.5.