summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMinijackson <minijackson@riseup.net>2021-06-04 15:06:12 +0200
committerMinijackson <minijackson@riseup.net>2021-06-04 15:06:12 +0200
commit491f44f7af95014838d1f6625d4f56408fbd1369 (patch)
tree2e4de555511e6e632247aa4cd991231cc616ed9f
parente28d325f20ae327b7eae75d23fee82922539ba58 (diff)
downloadnixos-config-reborn-491f44f7af95014838d1f6625d4f56408fbd1369.tar.gz
nixos-config-reborn-491f44f7af95014838d1f6625d4f56408fbd1369.zip
vim: completion -> compe, snippets -> vsnip
-rw-r--r--common/vim.nix8
-rw-r--r--dotfiles/vim-dev.lua13
-rw-r--r--dotfiles/vim.lua33
3 files changed, 36 insertions, 18 deletions
diff --git a/common/vim.nix b/common/vim.nix
index 8a27b06..ade66e1 100644
--- a/common/vim.nix
+++ b/common/vim.nix
@@ -57,15 +57,15 @@ let
57 vim-dirvish 57 vim-dirvish
58 lsp-status-nvim 58 lsp-status-nvim
59 59
60 completion-nvim 60 nvim-compe
61 completion-buffers 61
62 snippets-nvim 62 vim-vsnip
63 vim-vsnip-integ
63 64
64 telescope-nvim 65 telescope-nvim
65 66
66 # Treesitter 67 # Treesitter
67 nvim-treesitter 68 nvim-treesitter
68 completion-treesitter
69 nvim-treesitter-textobjects 69 nvim-treesitter-textobjects
70 nvim-treesitter-context 70 nvim-treesitter-context
71 71
diff --git a/dotfiles/vim-dev.lua b/dotfiles/vim-dev.lua
index 6b78022..d89a3bb 100644
--- a/dotfiles/vim-dev.lua
+++ b/dotfiles/vim-dev.lua
@@ -34,13 +34,22 @@ function on_attach(client, bufnr)
34 34
35 -- Rust specific 35 -- Rust specific
36 buf_set_keymap("n", "<leader>sh", "<cmd>RustToggleInlayHints<CR>", opts) 36 buf_set_keymap("n", "<leader>sh", "<cmd>RustToggleInlayHints<CR>", opts)
37
38 require("completion").on_attach()
39end 37end
40 38
39local capabilities = vim.lsp.protocol.make_client_capabilities()
40capabilities.textDocument.completion.completionItem.snippetSupport = true
41capabilities.textDocument.completion.completionItem.resolveSupport = {
42 properties = {
43 'documentation',
44 'detail',
45 'additionalTextEdits',
46 }
47}
48
41function setup_lsp_with(servers) 49function setup_lsp_with(servers)
42 for _, server in ipairs(servers) do 50 for _, server in ipairs(servers) do
43 lspconfig[server].setup { 51 lspconfig[server].setup {
52 capabilities = capabilities,
44 cmd = { vim.g[server .. "_path"] }, 53 cmd = { vim.g[server .. "_path"] },
45 on_attach = on_attach, 54 on_attach = on_attach,
46 } 55 }
diff --git a/dotfiles/vim.lua b/dotfiles/vim.lua
index 27fa722..c09b8e0 100644
--- a/dotfiles/vim.lua
+++ b/dotfiles/vim.lua
@@ -5,6 +5,8 @@ vim.o.undofile = true
5vim.o.backup = true 5vim.o.backup = true
6vim.cmd "set backupdir-=." 6vim.cmd "set backupdir-=."
7 7
8vim.cmd "set shortmess+=c"
9
8vim.o.mouse = "a" 10vim.o.mouse = "a"
9 11
10vim.o.ignorecase = true 12vim.o.ignorecase = true
@@ -163,21 +165,24 @@ require('nvim-treesitter.configs').setup {
163vim.o.foldmethod = 'expr' 165vim.o.foldmethod = 'expr'
164vim.o.foldexpr = 'nvim_treesitter#foldexpr()' 166vim.o.foldexpr = 'nvim_treesitter#foldexpr()'
165 167
166-- Completion-nvim 168-- nvim-compe
167 169
168vim.g.completion_chain_complete_list = { 170require("compe").setup {
169 default = { 171 source = {
170 { 172 buffer = true,
171 complete_items = { 'lsp', 'ts', 'path', 'snippet', 'buffers', 'tmux', }, 173 calc = true,
172 } 174 nvim_lsp = true,
175 nvim_lua = true,
176 nvim_treesitter = true,
177 path = true,
178 spell = true,
179 vsnip = true,
173 }, 180 },
174} 181}
175 182
176vim.cmd [[autocmd BufEnter * lua require'completion'.on_attach()]]
177 183
178local map = vim.api.nvim_set_keymap 184map("i", "<CR>", "compe#confirm('<CR>')", { noremap = true, silent = true, expr = true })
179 185map("i", "<C-e>", "compe#close('<C-e>')", { noremap = true, silent = true, expr = true })
180vim.g.completion_enable_snippet = "snippets.nvim"
181 186
182-- Telescope 187-- Telescope
183 188
@@ -218,9 +223,13 @@ require("lualine").setup {
218 }, 223 },
219} 224}
220 225
221-- Snippets.nvim 226-- VSnip
227
228map("i", "<Tab>", "vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'", { silent = true, expr = true })
229map("s", "<Tab>", "vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'", { silent = true, expr = true })
222 230
223require("snippets").use_suggested_mappings() 231map("i", "<S-Tab>", "vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<Tab>'", { silent = true, expr = true })
232map("s", "<S-Tab>", "vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<Tab>'", { silent = true, expr = true })
224 233
225-- OSCyank 234-- OSCyank
226 235