diff --git a/group_vars/all/neovim.yml b/group_vars/all/neovim.yml index ae2f5d9..e67edd3 100644 --- a/group_vars/all/neovim.yml +++ b/group_vars/all/neovim.yml @@ -21,6 +21,7 @@ neovim_plugins: name: 'cmp-nvim-lua' - url: 'https://github.com/nvim-treesitter/nvim-treesitter' name: 'nvim-treesitter' + version: master # main seems broken? - url: 'https://github.com/nvim-lua/plenary.nvim' name: 'plenary.nvim' - url: 'https://github.com/nvim-telescope/telescope-fzf-native.nvim' diff --git a/templates/nvim/lua/colorscheme.lua.j2 b/templates/nvim/lua/colorscheme.lua.j2 index 4cbea41..067d136 100644 --- a/templates/nvim/lua/colorscheme.lua.j2 +++ b/templates/nvim/lua/colorscheme.lua.j2 @@ -29,7 +29,7 @@ Use the `Introspect` option to inspect available options: dbus-send \ --session \ ---print-reply ] +--print-reply \ --reply-timeout=2000 \ --type=method_call \ --dest=org.freedesktop.portal.Desktop \ diff --git a/templates/nvim/lua/lsp.lua.j2 b/templates/nvim/lua/lsp.lua.j2 index 12e6684..1da3fdc 100644 --- a/templates/nvim/lua/lsp.lua.j2 +++ b/templates/nvim/lua/lsp.lua.j2 @@ -29,7 +29,7 @@ end --enable some language servers with the additional completion capabilities --offered by nvim-cmp -local servers = { +local auto_setup_servers = { {% for item in language_servers %} {% if item.auto_setup and not loop.last %} '{{ item.server_name }}', @@ -43,10 +43,8 @@ local servers = { local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities) -local nvim_lsp = require('lspconfig') - -for _, lsp in ipairs(servers) do - nvim_lsp[lsp].setup { +for _, lsp in ipairs(auto_setup_servers) do + vim.lsp.config[lsp] = { on_attach = on_attach, capabilities = capabilities, } @@ -60,26 +58,26 @@ local python_root_dir = function(fname) util.path.dirname(fname) end -nvim_lsp.ruff.setup { +vim.lsp.config['ruff'] = { on_attach = on_attach, capabilities = capabilities, root_dir = python_root_dir } -nvim_lsp.pyright.setup { +vim.lsp.config['pyright'] = { settings = { pyright = { -- Using Ruff's import organizer - disableOrganizeImports = true, + disableOrganizeImports = true, }, - }, + } } local snippet_capabilities = vim.deepcopy(capabilities); snippet_capabilities.textDocument.completion.completionItem.snippetSupport = true -nvim_lsp.html.setup { +vim.lsp.config['html'] = { on_attach = on_attach, capabilities = snippet_capabilities, filetypes = { 'html', 'htmldjango' }, @@ -92,17 +90,17 @@ nvim_lsp.html.setup { } } -nvim_lsp.cssls.setup { +vim.lsp.config['cssls'] = { on_attach = on_attach, capabilities = snippet_capabilities, } -nvim_lsp.jsonls.setup { +vim.lsp.config['jsonls'] = { on_attach = on_attach, capabilities = snippet_capabilities, } -nvim_lsp.lua_ls.setup { +vim.lsp.config['lua_ls'] = { on_attach = on_attach, capabilities = snippet_capabilities, settings = { @@ -115,12 +113,24 @@ nvim_lsp.lua_ls.setup { } {% endif %} -nvim_lsp.yamlls.setup { +vim.lsp.config['yamlls'] = { on_attach = on_attach, capabilities = capabilities, filetypes = { 'yaml', 'yaml.ansible', 'yaml.docker-compose', 'yaml.gitlab' } } +local servers = { + {% for item in language_servers %} + {% if not loop.last %} + '{{ item.server_name }}', + {% else %} + '{{ item.server_name }}' + {% endif %} + {% endfor %} +} + +vim.lsp.enable { unpack(servers) } + local cmp = require('cmp') local luasnip = require('luasnip') diff --git a/templates/nvim/lua/telescope.lua.j2 b/templates/nvim/lua/telescope.lua.j2 index d568703..38a5adc 100644 --- a/templates/nvim/lua/telescope.lua.j2 +++ b/templates/nvim/lua/telescope.lua.j2 @@ -23,12 +23,13 @@ vim.keymap.set('n', 'fj', builtin.jumplist, opts) vim.keymap.set('n', 'fl', builtin.loclist, opts) vim.keymap.set('n', 'fq', builtin.quickfix, opts) vim.keymap.set('n', 'fm', builtin.marks, opts) +vim.keymap.set('n', 'ft', builtin.treesitter, opts) telescope.setup({ defaults = { layout_strategy = 'vertical', layout_config = { - prompt_position = 'top', + prompt_position = 'bottom', vertical = { width = 0.8, height = 0.9 } }, },