Add nvim-cmp
This commit is contained in:
parent
fdad10eaf8
commit
1855b99eb8
12 changed files with 57 additions and 11 deletions
|
@ -1,6 +1,9 @@
|
|||
-- LSP Server for Bash
|
||||
|
||||
local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities())
|
||||
|
||||
require'lspconfig'.bashls.setup {
|
||||
capabilities = capabilities,
|
||||
on_attach = function()
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false })
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false })
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
-- LSP Server for LaTeX
|
||||
|
||||
local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities())
|
||||
|
||||
require'lspconfig'.texlab.setup {
|
||||
capabilities = capabilities,
|
||||
on_attach = function()
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false })
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false })
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
-- LSP Server for Lua
|
||||
|
||||
local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities())
|
||||
|
||||
require'lspconfig'.sumneko_lua.setup {
|
||||
capabilities = capabilities,
|
||||
on_attach = function()
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = 0, remap = false })
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = 0, remap = false })
|
||||
|
|
31
roles/neovim/files/lua/plugins/options/completion.lua
Normal file
31
roles/neovim/files/lua/plugins/options/completion.lua
Normal file
|
@ -0,0 +1,31 @@
|
|||
-- Completion
|
||||
|
||||
vim.opt.completeopt = { 'menu', 'menuone', 'noselect' }
|
||||
local cmp = require'cmp'
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
-- completion = cmp.config.window.bordered(),
|
||||
-- documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<Tab>'] = cmp.mapping.select_next_item(),
|
||||
['<S-Tab>'] = cmp.mapping.select_prev_item(),
|
||||
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'luasnip' }, -- For luasnip users.
|
||||
}, {
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
})
|
|
@ -1,6 +1,5 @@
|
|||
-- PLUGINS - OPTIONS
|
||||
|
||||
-- indentLine
|
||||
|
||||
-- vim.g.indentLine_char = '▏'
|
||||
vim.g.indentLine_fileType = { 'html', 'htmldjango', 'tex' }
|
||||
vim.g.indentLine_setConceal = 0
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
require('plugins.options.lsp')
|
||||
require('plugins.options.treesitter')
|
||||
require('plugins.options.completion')
|
||||
require('plugins.options.telescope')
|
||||
require('plugins.options.nerdtree')
|
||||
require('plugins.options.vimtex')
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
-- LSP - OPTIONS
|
||||
|
||||
-- LSP Servers
|
||||
|
||||
require('lsp.bash')
|
||||
require('lsp.latex')
|
||||
require('lsp.lua')
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
-- PLUGINS - OPTIONS
|
||||
|
||||
-- NERDTree
|
||||
|
||||
vim.g.NERDTreeIgnore = { '^__pycache__$', '\\.pyc', '\\~$' }
|
||||
vim.keymap.set('n', '<leader>ne', '<cmd>NERDTree<CR>', { remap = true })
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
-- TELESCOPE
|
||||
-- Telescope
|
||||
|
||||
require('telescope').setup {
|
||||
extensions = {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
-- PLUGINS - OPTIONS
|
||||
|
||||
-- Treesitter
|
||||
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
-- A list of parser names, or "all"
|
||||
ensure_installed = { "latex", "lua" },
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
-- PLUGINS - OPTIONS
|
||||
|
||||
-- VimTex
|
||||
|
||||
vim.g.tex_flavor = 'latex'
|
||||
vim.g.vimtex_view_method = 'zathura'
|
||||
vim.g.vimtex_quickfix_autoclose_after_keystrokes = 2
|
||||
|
|
|
@ -20,6 +20,16 @@ return require('packer').startup(function(use)
|
|||
run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
|
||||
}
|
||||
|
||||
-- Completion
|
||||
use 'hrsh7th/nvim-cmp'
|
||||
use 'hrsh7th/cmp-nvim-lsp'
|
||||
use 'hrsh7th/cmp-buffer'
|
||||
use 'hrsh7th/cmp-path'
|
||||
|
||||
-- LuaSnip
|
||||
use 'L3MON4D3/LuaSnip'
|
||||
use 'saadparwaiz1/cmp_luasnip'
|
||||
|
||||
-- Telescope
|
||||
use {
|
||||
'nvim-telescope/telescope.nvim', branch = '0.1.x',
|
||||
|
|
Loading…
Add table
Reference in a new issue