Update some plugins and config
This commit is contained in:
parent
8f3c32c2f5
commit
903b28d533
|
@ -6,7 +6,7 @@ let g:airline_right_alt_sep = ''
|
||||||
let g:airline_symbols.branch = ''
|
let g:airline_symbols.branch = ''
|
||||||
let g:airline_symbols.readonly = ''
|
let g:airline_symbols.readonly = ''
|
||||||
let g:airline_symbols.linenr = ''
|
let g:airline_symbols.linenr = ''
|
||||||
let g:airline_section_z = ''
|
"let g:airline_section_z = ''
|
||||||
|
|
||||||
function! LspStatus() abort
|
function! LspStatus() abort
|
||||||
let status = luaeval('require("lsp-status").status()')
|
let status = luaeval('require("lsp-status").status()')
|
||||||
|
|
4
init.vim
4
init.vim
|
@ -184,4 +184,8 @@ lua require("my-lsp")
|
||||||
lua require("lsputils")
|
lua require("lsputils")
|
||||||
lua require("conf.cmp")
|
lua require("conf.cmp")
|
||||||
lua require("conf.trouble")
|
lua require("conf.trouble")
|
||||||
|
lua require("conf.treesitter")
|
||||||
|
set foldmethod=expr
|
||||||
|
set foldexpr=nvim_treesitter#foldexpr()
|
||||||
|
set nofoldenable " Disable folding at startup.
|
||||||
" vi:foldmethod=marker sw=2
|
" vi:foldmethod=marker sw=2
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
local cmp = require'cmp'
|
local cmp = require'cmp'
|
||||||
|
|
||||||
cmp.setup({
|
cmp.setup({
|
||||||
snippet = {
|
snippet = {
|
||||||
expand = function(args)
|
expand = function(args)
|
||||||
|
@ -7,6 +8,8 @@ cmp.setup({
|
||||||
},
|
},
|
||||||
mapping = {
|
mapping = {
|
||||||
['<C-y>'] = cmp.mapping.confirm({ select = true }),
|
['<C-y>'] = cmp.mapping.confirm({ select = true }),
|
||||||
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
['<C-Space>'] = cmp.mapping.complete(),
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
['<C-e>'] = cmp.mapping.close(),
|
['<C-e>'] = cmp.mapping.close(),
|
||||||
['<CR>'] = cmp.mapping.confirm({
|
['<CR>'] = cmp.mapping.confirm({
|
||||||
|
@ -21,12 +24,28 @@ cmp.setup({
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
},
|
},
|
||||||
sources = {
|
sources = cmp.config.sources({
|
||||||
{ name = 'nvim_lsp' },
|
{ name = 'nvim_lsp' },
|
||||||
--{ name = 'buffer' },
|
|
||||||
{ name = 'vsnip' },
|
{ name = 'vsnip' },
|
||||||
|
},{
|
||||||
|
{ name = 'buffer' },
|
||||||
--{ name = 'path' },
|
--{ name = 'path' },
|
||||||
|
}),
|
||||||
|
})
|
||||||
|
|
||||||
|
cmp.setup.cmdline({ '/', '?' }, {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = {
|
||||||
|
{ name = 'buffer' }
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
||||||
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
|
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
||||||
|
cmp.setup.cmdline(':', {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'path' }
|
||||||
|
}, {
|
||||||
|
{ name = 'cmdline' }
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
|
@ -3,16 +3,16 @@ local lsp_status = require('lsp-status')
|
||||||
lsp_status.register_progress()
|
lsp_status.register_progress()
|
||||||
|
|
||||||
-- enable snippet support
|
-- enable snippet support
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
--local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
--capabilities.textDocument.completion.completionItem.snippetSupport = true
|
||||||
capabilities.textDocument.completion.completionItem.resolveSupport = {
|
--capabilities.textDocument.completion.completionItem.resolveSupport = {
|
||||||
properties = {
|
-- properties = {
|
||||||
'documentation',
|
-- 'documentation',
|
||||||
'detail',
|
-- 'detail',
|
||||||
'additionalTextEdits',
|
-- 'additionalTextEdits',
|
||||||
}
|
-- }
|
||||||
}
|
--}
|
||||||
capabilities = vim.tbl_extend('keep', capabilities or {}, lsp_status.capabilities)
|
--capabilities = vim.tbl_extend('keep', capabilities or {}, lsp_status.capabilities)
|
||||||
|
|
||||||
-- Use an on_attach function to only map the following keys
|
-- Use an on_attach function to only map the following keys
|
||||||
-- after the language server attaches to the current buffer
|
-- after the language server attaches to the current buffer
|
||||||
|
@ -48,24 +48,9 @@ local on_attach = function(client, bufnr)
|
||||||
--require'completion'.on_attach(client, bufnr)
|
--require'completion'.on_attach(client, bufnr)
|
||||||
end
|
end
|
||||||
|
|
||||||
local lsp_installer = require("nvim-lsp-installer")
|
require("lsp.metals")(on_attach)
|
||||||
lsp_installer.on_server_ready(function(server)
|
|
||||||
local opts = {}
|
|
||||||
|
|
||||||
server:setup(opts)
|
require("lsp.typescript")(on_attach)
|
||||||
end)
|
|
||||||
|
|
||||||
metals_config = require("metals").bare_config()
|
|
||||||
metals_config.init_options.statusBarProvider = "on"
|
|
||||||
metals_config.settings = { showImplicitArguments = true }
|
|
||||||
metals_config.on_attach = on_attach
|
|
||||||
metals_config.capabilities = require("cmp_nvim_lsp").update_capabilities(capabilities)
|
|
||||||
|
|
||||||
vim.cmd [[augroup lsp]]
|
|
||||||
vim.cmd [[au!]]
|
|
||||||
vim.cmd([[autocmd FileType scala setlocal omnifunc=v:lua.vim.lsp.omnifunc]])
|
|
||||||
vim.cmd [[au FileType scala,sbt lua require("metals").initialize_or_attach(metals_config)]]
|
|
||||||
vim.cmd [[augroup end]]
|
|
||||||
|
|
||||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||||
vim.lsp.diagnostic.on_publish_diagnostics, {
|
vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||||
|
|
Loading…
Reference in a new issue