summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/custom/plugins/lsp-plugins.lua
diff options
context:
space:
mode:
authorKyren223 <ulmliad223@gmail.com>2024-07-22 18:18:10 +0300
committerKyren223 <ulmliad223@gmail.com>2024-07-22 18:18:10 +0300
commit565e57c0155e31235eb3d2ef0a83fe36d058530a (patch)
tree790d210b24c08427e1990e66342658bbecbc7944 /.config/nvim/lua/custom/plugins/lsp-plugins.lua
parent191e0471aa22ca1e70c7692d19149b47df10f439 (diff)
feat(neovim): major lsp refactor and some more lazy loading
Diffstat (limited to '.config/nvim/lua/custom/plugins/lsp-plugins.lua')
-rw-r--r--.config/nvim/lua/custom/plugins/lsp-plugins.lua72
1 files changed, 72 insertions, 0 deletions
diff --git a/.config/nvim/lua/custom/plugins/lsp-plugins.lua b/.config/nvim/lua/custom/plugins/lsp-plugins.lua
new file mode 100644
index 0000000..5a6f275
--- /dev/null
+++ b/.config/nvim/lua/custom/plugins/lsp-plugins.lua
@@ -0,0 +1,72 @@
+return {
+ {
+ 'nvimtools/none-ls.nvim',
+ config = function()
+ local null_ls = require('null-ls')
+ null_ls.setup({
+ sources = {
+ null_ls.builtins.formatting.stylua,
+ },
+ })
+ end,
+ },
+ -- NOTE: [Good alternative](https://github.com/rachartier/tiny-inline-diagnostic.nvim)
+ -- although, this plugin is amazing, so I wouldn't switch it most likely
+ {
+ 'https://git.sr.ht/~whynothugo/lsp_lines.nvim',
+ event = 'BufEnter',
+ config = function()
+ require('lsp_lines').setup()
+ vim.keymap.set('n', '<Leader>dt', require('lsp_lines').toggle, { desc = '[D]iagnostics [T]oggle inline' })
+ end,
+ },
+ {
+ -- FIXME: fork the repo and fix the following issues
+ -- Make both insert and normal be toggelable rather than insert always showing and normal toggleable
+ 'ray-x/lsp_signature.nvim',
+ event = 'VeryLazy',
+ opts = {
+ bind = true, -- This is mandatory, otherwise border config won't get registered.
+ handler_opts = { border = 'single' },
+ doc_lines = 0,
+ hint_enable = false,
+ },
+ },
+ {
+ 'folke/lazydev.nvim',
+ ft = 'lua',
+ opts = { library = { { path = 'luvit-meta/library', words = { 'vim%.uv' } } } },
+ },
+ {
+ 'nvimdev/lspsaga.nvim',
+ dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' },
+ event = 'LspAttach',
+ opts = {
+ lightbulb = {
+ enable = false,
+ sign = false,
+ virtual_text = true,
+ },
+ implement = {
+ sign = false,
+ virtual_text = true,
+ },
+ floaterm = {
+ height = 0.7,
+ width = 0.7,
+ },
+ outline = {
+ layout = 'float',
+ },
+ -- TODO: Change <C-k> in rename to smthing else
+ -- bcz I am using <C-k> for moving between windows
+ -- Maybe <C-c> for abort, <cr> for confirm
+ },
+ },
+
+ -- AUtoformatting
+ -- 'stevear/conform.nvim',
+
+ -- Schema info
+ -- 'b0o/SchemaStore.nvim',
+}