summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/user/plugins/lspconfig.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lua/user/plugins/lspconfig.lua')
-rw-r--r--.config/nvim/lua/user/plugins/lspconfig.lua138
1 files changed, 0 insertions, 138 deletions
diff --git a/.config/nvim/lua/user/plugins/lspconfig.lua b/.config/nvim/lua/user/plugins/lspconfig.lua
deleted file mode 100644
index 5685ce7..0000000
--- a/.config/nvim/lua/user/plugins/lspconfig.lua
+++ /dev/null
@@ -1,138 +0,0 @@
-local buf_option = vim.api.nvim_buf_set_option
-local buf_keymap = require 'lib.utils'.buf_keymap
-
-vim.diagnostic.config {
- virtual_text = false,
- severity_sort = true,
- float = {
- source = true,
- focus = false,
- format = function(diagnostic)
- if diagnostic.user_data ~= nil and diagnostic.user_data.lsp.code ~= nil then
- return string.format("%s: %s", diagnostic.user_data.lsp.code, diagnostic.message)
- end
- return diagnostic.message
- end,
- }
-}
-
-local on_attach = function(_, bufnr)
- buf_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
-
- buf_keymap(bufnr, 'n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>')
- buf_keymap(bufnr, 'n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>')
- buf_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>')
- buf_keymap(bufnr, 'n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>')
- buf_keymap(bufnr, 'n', '<leader><C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>')
- buf_keymap(bufnr, 'n', '<leader>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>')
- buf_keymap(bufnr, 'n', '<leader>rn', '<cmd>lua vim.lsp.buf.rename()<CR>')
- buf_keymap(bufnr, 'n', 'gr', ':Telescope lsp_references<CR>')
-
- buf_keymap(bufnr, 'n', '<leader>ca', ':CodeActionMenu<CR>')
- buf_keymap(bufnr, 'v', '<leader>ca', ':CodeActionMenu<CR>')
-
- buf_keymap(bufnr, 'n', '<leader>d', '<cmd>lua vim.diagnostic.open_float()<CR>')
- buf_keymap(bufnr, 'n', '[d', '<cmd>lua vim.diagnostic.goto_prev()<CR>')
- buf_keymap(bufnr, 'n', ']d', '<cmd>lua vim.diagnostic.goto_next()<CR>')
- buf_keymap(bufnr, 'n', '<leader>F', '<cmd>lua vim.lsp.buf.format { async = true }<CR>')
-
- -- Autoformat on save doesn't work with server_capabilities, even
- -- though it's the replacement for the deprecated resolved_capabilities.
-
- -- if _.server_capabilities.document_formatting then
- -- vim.api.nvim_command [[augroup Format]]
- -- vim.api.nvim_command [[autocmd! * <buffer>]]
- -- vim.api.nvim_command [[autocmd BufWritePre <buffer> lua vim.lsp.buf.formatting_seq_sync()]]
- -- vim.api.nvim_command [[augroup END]]
- -- end
-end
-
--- provide additional completion capabilities
-local capabilities = require('cmp_nvim_lsp').default_capabilities(vim.lsp.protocol.make_client_capabilities())
-
-require 'lspconfig'.emmet_ls.setup {
- on_attach = on_attach,
- capabilities = capabilities,
- flags = {
- debounce_text_changes = 150,
- },
- filetypes = { 'html', 'javascript', 'typescript', 'javascriptreact', 'typescriptreact', 'eruby' }
-}
-
--- require'lspconfig'.lua_ls.setup {
--- on_init = function(client)
--- local path = client.workspace_folders[1].name
--- if not vim.loop.fs_stat(path..'/.luarc.json') and not vim.loop.fs_stat(path..'/.luarc.jsonc') then
--- client.config.settings = vim.tbl_deep_extend('force', client.config.settings.Lua, {
--- runtime = {
--- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
--- version = 'LuaJIT'
--- },
--- -- Make the server aware of Neovim runtime files
--- workspace = {
--- library = { vim.env.VIMRUNTIME }
--- -- or pull in all of 'runtimepath'. NOTE: this is a lot slower
--- -- library = vim.api.nvim_get_runtime_file("", true)
--- },
--- cmd = { "~/.emacs.d/.cache/lsp/lua-language-server/bin/lua-language-server" },
--- })
-
--- client.notify("workspace/didChangeConfiguration", { settings = client.config.settings })
--- end
--- return true
--- end
--- }
-
-require'lspconfig'.lua_ls.setup {
- on_attach = on_attach,
- capabilities = capabilities,
- flags = {
- debounce_text_changes = 150,
- },
- cmd = { "lua-language-server" },
-}
-
-require 'lspconfig'.bashls.setup {
- on_attach = on_attach,
- capabilities = capabilities,
- flags = {
- debounce_text_changes = 150,
- },
-}
-
-require 'lspconfig'.pylsp.setup {
- on_attach = on_attach,
- capabilities = capabilities,
- flags = {
- debounce_text_changes = 150,
- },
-}
-
-require 'lspconfig'.clangd.setup {
- on_attach = on_attach,
- capabilities = capabilities,
- flags = {
- debounce_text_changes = 150,
- },
- cmd = { "clangd" };
-}
-
--- require 'lspconfig'.solargraph.setup {
--- on_attach = on_attach,
--- capabilities = capabilities,
--- flags = {
--- debounce_text_changes = 150,
--- }
--- }
-
--- suppress error messages from lang servers
-vim.notify = function(msg, log_level, _)
- if msg:match 'exit code' then
- return
- end
- if log_level == vim.log.levels.ERROR then
- vim.api.nvim_err_writeln(msg)
- else
- vim.api.nvim_echo({ { msg } }, true, {})
- end
-end