From d0b5bc760d44846dc46dc8a81ee68b64cd5017bb Mon Sep 17 00:00:00 2001 From: chemzqm <chemzqm@gmail.com> Date: Wed, 28 Nov 2018 04:18:32 +0800 Subject: [PATCH] fix label of signatureHelp --- package.json | 2 +- src/server/features/signatureHelp.ts | 18 +++++++++++------- src/server/languageProvider.ts | 6 ++++-- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index dd3ffeb..d94a680 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "main": "lib/index.js", "publisher": "chemzqm", "engines": { - "coc": "^0.0.24" + "coc": "^0.0.35" }, "keywords": [ "coc.nvim", diff --git a/src/server/features/signatureHelp.ts b/src/server/features/signatureHelp.ts index 2a31bf4..fd0593f 100644 --- a/src/server/features/signatureHelp.ts +++ b/src/server/features/signatureHelp.ts @@ -56,18 +56,22 @@ export default class TypeScriptSignatureHelpProvider implements SignatureHelpPro } private convertSignature(item: Proto.SignatureHelpItem): SignatureInformation { + let parameters = item.parameters.map(p => { + return { + label: Previewer.plain(p.displayParts), + documentation: Previewer.markdownDocumentation(p.documentation, []) + } + }) + let label = Previewer.plain(item.prefixDisplayParts) + label += parameters.map(parameter => parameter.label).join(Previewer.plain(item.separatorDisplayParts)) + label += Previewer.plain(item.suffixDisplayParts) return { - label: Previewer.plain(item.prefixDisplayParts).replace(/\($/, ''), + label, documentation: Previewer.markdownDocumentation( item.documentation, item.tags.filter(x => x.name !== 'param') ), - parameters: item.parameters.map(p => { - return { - label: Previewer.plain(p.displayParts), - documentation: Previewer.markdownDocumentation(p.documentation, []) - } - }) + parameters } } } diff --git a/src/server/languageProvider.ts b/src/server/languageProvider.ts index a300a34..0179b23 100644 --- a/src/server/languageProvider.ts +++ b/src/server/languageProvider.ts @@ -233,13 +233,15 @@ export default class LanguageProvider { this.disposables.push( languages.registerCodeActionProvider( languageIds, - new RefactorProvider(client, this.fileConfigurationManager))) + new RefactorProvider(client, this.fileConfigurationManager), + 'tsserver')) } this.disposables.push( languages.registerCodeActionProvider( languageIds, - new QuickfixProvider(client, this.diagnosticsManager, this.bufferSyncSupport))) + new QuickfixProvider(client, this.diagnosticsManager, this.bufferSyncSupport), + 'tsserver')) let cachedResponse = new CachedNavTreeResponse() if (this.client.apiVersion.gte(API.v206) && conf.get<boolean>('referencesCodeLens.enable')) {