aboutsummaryrefslogtreecommitdiff
path: root/runtime/autoload/lsp.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/autoload/lsp.vim')
-rw-r--r--runtime/autoload/lsp.vim45
1 files changed, 45 insertions, 0 deletions
diff --git a/runtime/autoload/lsp.vim b/runtime/autoload/lsp.vim
new file mode 100644
index 0000000000..4c8f8b396a
--- /dev/null
+++ b/runtime/autoload/lsp.vim
@@ -0,0 +1,45 @@
+function! lsp#add_filetype_config(config) abort
+ call luaeval('vim.lsp.add_filetype_config(_A)', a:config)
+endfunction
+
+function! lsp#set_log_level(level) abort
+ call luaeval('vim.lsp.set_log_level(_A)', a:level)
+endfunction
+
+function! lsp#get_log_path() abort
+ return luaeval('vim.lsp.get_log_path()')
+endfunction
+
+function! lsp#omnifunc(findstart, base) abort
+ return luaeval("vim.lsp.omnifunc(_A[1], _A[2])", [a:findstart, a:base])
+endfunction
+
+function! lsp#text_document_hover() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/hover', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction
+
+function! lsp#text_document_declaration() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/declaration', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction
+
+function! lsp#text_document_definition() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/definition', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction
+
+function! lsp#text_document_signature_help() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/signatureHelp', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction
+
+function! lsp#text_document_type_definition() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/typeDefinition', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction
+
+function! lsp#text_document_implementation() abort
+ lua vim.lsp.buf_request(nil, 'textDocument/implementation', vim.lsp.protocol.make_text_document_position_params())
+ return ''
+endfunction