From: Yegappan Lakshmanan Date: Mon, 21 Dec 2020 07:11:57 +0000 (-0800) Subject: Add additional details for completion X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=a8376ca6735244af8f525f11c6cde4dd1add75f4;p=vim-lsp.git Add additional details for completion --- diff --git a/autoload/lsp.vim b/autoload/lsp.vim index 1e61efe..604514c 100644 --- a/autoload/lsp.vim +++ b/autoload/lsp.vim @@ -105,11 +105,13 @@ def LSP_processSignaturehelpReply(lspserver: dict, req: dict, reply: d var text = sig.label var hllen = 0 var startcol = 0 - var params_len = sig.parameters->len() - if params_len > 0 && result.activeParameter < params_len - var label = sig.parameters[result.activeParameter].label - hllen = label->len() - startcol = text->stridx(label) + if sig->has_key('parameters') + var params_len = sig.parameters->len() + if params_len > 0 && result.activeParameter < params_len + var label = sig.parameters[result.activeParameter].label + hllen = label->len() + startcol = text->stridx(label) + endif endif var popupID = popup_atcursor(text, {}) prop_type_add('signature', {'bufnr': popupID->winbufnr(), 'highlight': 'Title'}) @@ -170,6 +172,12 @@ def LSP_processCompletionReply(lspserver: dict, req: dict, reply: dict # map LSP kind to complete-item-kind d.kind = LSP_completeItemKindChar(item.kind) endif + if item->has_key('detail') + d.menu = item.detail + endif + if item->has_key('documentation') + d.info = item.documentation + endif lspserver.completeItems->add(d) endfor