From f95ea34b21b0ad562de6b6f1ef4d8fee4686be41 Mon Sep 17 00:00:00 2001 From: Yegappan Lakshmanan Date: Fri, 30 Jun 2023 21:50:31 -0700 Subject: [PATCH] Minor optimizations --- autoload/lsp/buffer.vim | 3 ++- autoload/lsp/completion.vim | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/autoload/lsp/buffer.vim b/autoload/lsp/buffer.vim index 54c191b..85a07ca 100644 --- a/autoload/lsp/buffer.vim +++ b/autoload/lsp/buffer.vim @@ -98,7 +98,8 @@ export def BufLspServerGet(bnr: number, feature: string = null_string): dicthas_key(feature) && lspserver.features[feature] + var has_feature = lspserver.features->get(feature, false) + if has_feature return lspserver endif endfor diff --git a/autoload/lsp/completion.vim b/autoload/lsp/completion.vim index 7ea2416..6a2bdda 100644 --- a/autoload/lsp/completion.vim +++ b/autoload/lsp/completion.vim @@ -90,7 +90,8 @@ def LspCompleteItemKindChar(kind: number): string var kindName = kindMap[kind] var kindValue = defaultKinds[kindName] - if opt.lspOptions.customCompletionKinds && opt.lspOptions.completionKinds->has_key(kindName) + if opt.lspOptions.customCompletionKinds + && opt.lspOptions.completionKinds->has_key(kindName) kindValue = opt.lspOptions.completionKinds[kindName] endif @@ -532,11 +533,11 @@ enddef # then set the 'filetype' to "lspgfm". def LspSetPopupFileType() var item = v:event.completed_item - if !item->has_key('user_data') || item.user_data->empty() + var cItem = item->get('user_data', {}) + if cItem->empty() return endif - var cItem = item.user_data if cItem->type() != v:t_dict || !cItem->has_key('documentation') \ || cItem.documentation->type() != v:t_dict \ || cItem.documentation.kind != 'markdown' -- 2.48.1