File tree Expand file tree Collapse file tree 3 files changed +44
-0
lines changed Expand file tree Collapse file tree 3 files changed +44
-0
lines changed Original file line number Diff line number Diff line change 4444 "vscode" : " ^0.11.0"
4545 },
4646 "dependencies" : {
47+ "vscode-languageclient" : " 2.3.0" ,
48+ "vscode-languageserver" : " 2.2.1" ,
4749 "vscode-languageserver-types" : " 1.0.1" ,
4850 "vscode-css-languageservice" : " 1.0.4"
4951 }
Original file line number Diff line number Diff line change 33// (c) 2016 Ecmel Ercan
44
55import * as vsc from 'vscode' ;
6+ import * as lc from 'vscode-languageclient' ;
67import * as lst from 'vscode-languageserver-types' ;
78import * as css from 'vscode-css-languageservice' ;
89import * as fs from 'fs' ;
@@ -226,6 +227,24 @@ export function activate(context: vsc.ExtensionContext) {
226227 let classServer = new ClassServer ( ) ;
227228
228229 context . subscriptions . push ( vsc . languages . registerCompletionItemProvider ( 'html' , classServer ) ) ;
230+
231+
232+ // LANGUAGE CLIENT
233+
234+ let serverModule = context . asAbsolutePath ( path . join ( 'out' , 'src' , 'server.js' ) ) ;
235+ let debugOptions = { execArgv : [ "--nolazy" , "--debug=6004" ] } ;
236+
237+ let serverOptions : lc . ServerOptions = {
238+ run : { module : serverModule , transport : lc . TransportKind . ipc } ,
239+ debug : { module : serverModule , transport : lc . TransportKind . ipc , options : debugOptions }
240+ }
241+
242+ let clientOptions : lc . LanguageClientOptions = {
243+ documentSelector : [ 'html' ]
244+ }
245+
246+ let client = new lc . LanguageClient ( 'HTML CSS Support' , serverOptions , clientOptions ) . start ( ) ;
247+ context . subscriptions . push ( client ) ;
229248}
230249
231250export function deactivate ( ) {
Original file line number Diff line number Diff line change 1+ import * as ls from 'vscode-languageserver' ;
2+ import * as lst from 'vscode-languageserver-types' ;
3+ import * as css from 'vscode-css-languageservice' ;
4+
5+ let conn = ls . createConnection ( new ls . IPCMessageReader ( process ) , new ls . IPCMessageWriter ( process ) ) ;
6+ let docs = new ls . TextDocuments ( ) ;
7+
8+ docs . listen ( conn ) ;
9+
10+ conn . onInitialize ( ( params ) : ls . InitializeResult => {
11+ return {
12+ capabilities : {
13+ textDocumentSync : docs . syncKind
14+ }
15+ }
16+ } ) ;
17+
18+ docs . onDidChangeContent ( ( change ) => {
19+ console . log ( "Changed: " + change . document . uri ) ;
20+ } ) ;
21+
22+
23+ conn . listen ( ) ;
You can’t perform that action at this time.
0 commit comments