diff --git a/extensions/json/client/src/jsonMain.ts b/extensions/json/client/src/jsonMain.ts index 6d1718d14d8b027fc7a7b2a1cee20b4e81ee7790..0373150f72860b2cfdf62e59221556f857e84c86 100644 --- a/extensions/json/client/src/jsonMain.ts +++ b/extensions/json/client/src/jsonMain.ts @@ -6,7 +6,7 @@ import * as path from 'path'; -import { workspace, languages, ExtensionContext, extensions, Uri, Range, TextDocument, ColorRange, Color } from 'vscode'; +import { workspace, languages, ExtensionContext, extensions, Uri, TextDocument, ColorRange, Color } from 'vscode'; import { LanguageClient, LanguageClientOptions, RequestType, ServerOptions, TransportKind, NotificationType, DidChangeConfigurationNotification } from 'vscode-languageclient'; import TelemetryReporter from 'vscode-extension-telemetry'; import { ConfigurationFeature } from 'vscode-languageclient/lib/proposed'; @@ -21,10 +21,6 @@ namespace VSCodeContentRequest { export const type: RequestType = new RequestType('vscode/content'); } -namespace ColorSymbolRequest { - export const type: RequestType = new RequestType('json/colorSymbols'); -} - export interface ISchemaAssociations { [pattern: string]: string[]; } @@ -83,10 +79,12 @@ export function activate(context: ExtensionContext) { debug: { module: serverModule, transport: TransportKind.ipc, options: debugOptions } }; + let documentSelector = ['json']; + // Options to control the language client let clientOptions: LanguageClientOptions = { // Register the server for json documents - documentSelector: ['json'], + documentSelector, synchronize: { // Synchronize the setting section 'json' to the server configurationSection: ['json', 'http'], @@ -123,7 +121,8 @@ export function activate(context: ExtensionContext) { client.sendNotification(SchemaAssociationNotification.type, getSchemaAssociation(context)); - context.subscriptions.push(languages.registerColorProvider('json', { + // register color provider + context.subscriptions.push(languages.registerColorProvider(documentSelector, { provideDocumentColors(document: TextDocument): Thenable { let params = client.code2ProtocolConverter.asDocumentSymbolParams(document); return client.sendRequest(DocumentColorRequest.type, params).then(symbols => { diff --git a/extensions/json/npm-shrinkwrap.json b/extensions/json/npm-shrinkwrap.json index 47b7a19991cd9e90321b263e61b386a5b7f1a9da..4caf64d28b77866453a6c987c4ac56b5e1e85e11 100644 --- a/extensions/json/npm-shrinkwrap.json +++ b/extensions/json/npm-shrinkwrap.json @@ -24,7 +24,7 @@ }, "vscode-languageserver-protocol": { "version": "3.1.1", - "from": "vscode-languageserver-protocol@>=3.1.0 <4.0.0", + "from": "vscode-languageserver-protocol@>=3.1.1 <4.0.0", "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.1.1.tgz" }, "vscode-languageserver-types": { diff --git a/extensions/json/package.json b/extensions/json/package.json index 60bfffe36945027a13340652541fa241c932e319..ba30bb1045d420ad59cc1e6ec0866711347c7ef8 100644 --- a/extensions/json/package.json +++ b/extensions/json/package.json @@ -134,6 +134,7 @@ "dependencies": { "vscode-extension-telemetry": "0.0.8", "vscode-languageclient": "3.4.0-next.17", + "vscode-languageserver-protocol": "^3.1.1", "vscode-nls": "2.0.2" }, "devDependencies": { diff --git a/extensions/json/server/npm-shrinkwrap.json b/extensions/json/server/npm-shrinkwrap.json index 2cac43fbdb4e788a6fe42283cc69171137c17e7b..04861afd39ffd3f0973c116d44a0cc36e950e633 100644 --- a/extensions/json/server/npm-shrinkwrap.json +++ b/extensions/json/server/npm-shrinkwrap.json @@ -59,7 +59,7 @@ }, "vscode-languageserver-protocol": { "version": "3.1.1", - "from": "vscode-languageserver-protocol@>=3.1.0 <4.0.0", + "from": "vscode-languageserver-protocol@>=3.1.1 <4.0.0", "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.1.1.tgz" }, "vscode-languageserver-types": { diff --git a/extensions/json/server/package.json b/extensions/json/server/package.json index 9a215afd2ad095e3e32682cfa2e1a8d566ffed5d..8918e797eb778c1a23445f8ad23b9dc76dfff562 100644 --- a/extensions/json/server/package.json +++ b/extensions/json/server/package.json @@ -12,6 +12,7 @@ "request-light": "^0.2.1", "vscode-json-languageservice": "^2.0.15", "vscode-languageserver": "3.4.0-next.6", + "vscode-languageserver-protocol": "^3.1.1", "vscode-nls": "^2.0.2" }, "devDependencies": { diff --git a/extensions/json/server/src/jsonServerMain.ts b/extensions/json/server/src/jsonServerMain.ts index 654c5e319d86bbff4e125bbdbf64d476682e71ce..2fe428f717f339e5e701005b9cce322ba624765d 100644 --- a/extensions/json/server/src/jsonServerMain.ts +++ b/extensions/json/server/src/jsonServerMain.ts @@ -7,7 +7,7 @@ import { createConnection, IConnection, TextDocuments, TextDocument, InitializeParams, InitializeResult, NotificationType, RequestType, - DocumentRangeFormattingRequest, Disposable, Range, ServerCapabilities + DocumentRangeFormattingRequest, Disposable, ServerCapabilities } from 'vscode-languageserver'; import { DocumentColorRequest, ServerCapabilities as CPServerCapabilities } from 'vscode-languageserver-protocol/lib/protocol.colorProvider.proposed'; @@ -36,10 +36,6 @@ namespace VSCodeContentRequest { export const type: RequestType = new RequestType('vscode/content'); } -namespace ColorSymbolRequest { - export const type: RequestType = new RequestType('json/colorSymbols'); -} - // Create a connection for the server let connection: IConnection = createConnection();