diff --git a/.config/nvim/lua/plugins/cmp.lua b/.config/nvim/lua/plugins/cmp.lua deleted file mode 100644 index 749917a..0000000 --- a/.config/nvim/lua/plugins/cmp.lua +++ /dev/null @@ -1,134 +0,0 @@ -local cmp_status_ok, cmp = pcall(require, "cmp") -if not cmp_status_ok then - return -end - -local snip_status_ok, luasnip = pcall(require, "luasnip") -if not snip_status_ok then - return -end - -require("luasnip/loaders/from_vscode").lazy_load() - -local check_backspace = function() - local col = vim.fn.col "." - 1 - return col == 0 or vim.fn.getline("."):sub(col, col):match "%s" -end - ---   פּ ﯟ   some other good icons -local kind_icons = { - Text = "", - Method = "m", - Function = "", - Constructor = "", - Field = "", - Variable = "", - Class = "", - Interface = "", - Module = "", - Property = "", - Unit = "", - Value = "", - Enum = "", - Keyword = "", - Snippet = "", - Color = "", - File = "", - Reference = "", - Folder = "", - EnumMember = "", - Constant = "", - Struct = "", - Event = "", - Operator = "", - TypeParameter = "", -} --- find more here: https://www.nerdfonts.com/cheat-sheet - -cmp.setup { - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) -- For `luasnip` users. - end, - }, - mapping = { - [""] = cmp.mapping.select_prev_item(), - [""] = cmp.mapping.select_next_item(), - [""] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), - [""] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), - [""] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), - [""] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `` mapping. - [""] = cmp.mapping { - i = cmp.mapping.abort(), - c = cmp.mapping.close(), - }, - -- Accept currently selected item. If none selected, `select` first item. - -- Set `select` to `false` to only confirm explicitly selected items. - [""] = cmp.mapping.confirm { select = true }, - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expandable() then - luasnip.expand() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - elseif check_backspace() then - fallback() - else - fallback() - end - end, { - "i", - "s", - }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - elseif luasnip.jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { - "i", - "s", - }), - }, - formatting = { - fields = { "kind", "abbr", "menu" }, - format = function(entry, vim_item) - -- Kind icons - vim_item.kind = string.format("%s", kind_icons[vim_item.kind]) - -- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind - vim_item.menu = ({ - nvim_lsp = "(LSP)", - luasnip = "(Snippet)", - buffer = "(Text)", - path = "(Path)", - })[entry.source.name] - return vim_item - end, - }, - sources = { - { name = "nvim_lsp" }, - { name = "luasnip" }, - { name = "buffer" }, - { name = "path" }, - }, - confirm_opts = { - behavior = cmp.ConfirmBehavior.Replace, - select = false, - }, - window = { - documentation = cmp.config.window.bordered(), - completion = cmp.config.window.bordered({ - winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None" - }) - - }, - experimental = { - ghost_text = false, - native_menu = false, - }, -} - diff --git a/.config/nvim/lua/plugins/coq.lua b/.config/nvim/lua/plugins/coq.lua new file mode 100644 index 0000000..8545e7f --- /dev/null +++ b/.config/nvim/lua/plugins/coq.lua @@ -0,0 +1,6 @@ +vim.g.coq_settings = { + auto_start = 'shut-up', + clients = { + tmux = { enabled = false }, + }, +} diff --git a/.config/nvim/lua/plugins/lspconfig.lua b/.config/nvim/lua/plugins/lspconfig.lua index e61ec35..c140f1f 100644 --- a/.config/nvim/lua/plugins/lspconfig.lua +++ b/.config/nvim/lua/plugins/lspconfig.lua @@ -31,18 +31,25 @@ local on_attach = function(client, bufnr) vim.keymap.set('n', 'f', function() vim.lsp.buf.format { async = true } end, bufopts) end -require('lspconfig')['hls'].setup{ - on_attach = on_attach, - flags = lsp_flags, -} -require('lspconfig')['rust_analyzer'].setup{ - on_attach = on_attach, - flags = lsp_flags, - -- Server-specific settings... - settings = { - ["rust-analyzer"] = {} - } +local lsp = require "lspconfig" +local coq = require "coq" + +lsp['hls'].setup{ + on_attach = on_attach, + flags = lsp_flags, } +lsp['rust_analyzer'].setup{} + +lsp.rust_analyzer.setup( + coq.lsp_ensure_capabilities{ + on_attach = on_attach, + flags = lsp_flags, + -- Server-specific settings... + settings = { + ["rust-analyzer"] = {} + } + } +) require('lspconfig')['texlab'].setup{ on_attach = on_attach, flags = lsp_flags, diff --git a/.config/nvim/lua/plugins/packer.lua b/.config/nvim/lua/plugins/packer.lua index 097b11b..637cb04 100644 --- a/.config/nvim/lua/plugins/packer.lua +++ b/.config/nvim/lua/plugins/packer.lua @@ -29,26 +29,31 @@ local plugins = packer.startup({function(use) end } - use { "hrsh7th/nvim-cmp", - requires = { - 'hrsh7th/cmp-nvim-lsp', -- lsp - 'hrsh7th/cmp-buffer', --buffer completions - 'hrsh7th/cmp-path', --path completions - 'hrsh7th/cmp-cmdline' --cmdline completions - }, - config = function() - require "plugins.cmp" + use {"ms-jpq/coq_nvim", + branch = 'coq', + config = function () + vim.g.coq_settings = { auto_start = 'shut-up'} end + } + + use {"ms-jpq/coq_nvim", + branch = 'artifacts', + } + use {'stevearc/dressing.nvim'} -- Rename variable pop up - - use { "L3MON4D3/LuaSnip", - requires = { - "rafamadriz/friendly-snippets", - "saadparwaiz1/cmp_luasnip" - }, + use {"windwp/nvim-autopairs", + config = function() require("nvim-autopairs").setup {} end } + + +---- use { "L3MON4D3/LuaSnip", +-- requires = { +-- "rafamadriz/friendly-snippets", +---- "saadparwaiz1/cmp_luasnip" +-- }, +-- } use { "williamboman/mason.nvim", config = function () require "plugins.mason"