LSP and coq now play nicely
This commit is contained in:
parent
ea148c695e
commit
781e666443
@ -16,3 +16,6 @@ opt.ignorecase = true
|
|||||||
opt.smartcase = true
|
opt.smartcase = true
|
||||||
opt.smartindent = true
|
opt.smartindent = true
|
||||||
opt.mouse = "i"
|
opt.mouse = "i"
|
||||||
|
|
||||||
|
-- completion for lua
|
||||||
|
opt.completeopt = 'menuone,noselect'
|
||||||
|
@ -43,8 +43,8 @@ return require('packer').startup(function(use)
|
|||||||
use {'neovim/nvim-lspconfig', event = 'BufRead'}
|
use {'neovim/nvim-lspconfig', event = 'BufRead'}
|
||||||
use {
|
use {
|
||||||
'kabouzeid/nvim-lspinstall',
|
'kabouzeid/nvim-lspinstall',
|
||||||
after = 'nvim-lspconfig',
|
config = function() require "plugins.lspinstall" end,
|
||||||
config = function() require "plugins.lspinstall" end
|
after = 'nvim-lspconfig'
|
||||||
}
|
}
|
||||||
use {'onsails/lspkind-nvim', after = 'nvim-lspconfig'}
|
use {'onsails/lspkind-nvim', after = 'nvim-lspconfig'}
|
||||||
use {"ray-x/lsp_signature.nvim", after = 'nvim-lspconfig'}
|
use {"ray-x/lsp_signature.nvim", after = 'nvim-lspconfig'}
|
||||||
@ -52,8 +52,10 @@ return require('packer').startup(function(use)
|
|||||||
use {
|
use {
|
||||||
'ms-jpq/coq_nvim',
|
'ms-jpq/coq_nvim',
|
||||||
branch = 'coq',
|
branch = 'coq',
|
||||||
requires = {'ms-jpq/coq.artifacts', branch = 'artifacts'}
|
event = 'InsertEnter',
|
||||||
|
config = function() require "plugins.coq" end
|
||||||
}
|
}
|
||||||
|
use {'ms-jpq/coq.artifacts', after = 'coq_nvim', branch = 'artifacts'}
|
||||||
|
|
||||||
-- formating and editing
|
-- formating and editing
|
||||||
use {"sbdchd/neoformat", cmd = "Neoformat"}
|
use {"sbdchd/neoformat", cmd = "Neoformat"}
|
||||||
|
3
lua/plugins/coq.lua
Normal file
3
lua/plugins/coq.lua
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
vim.g.coq_settings = {auto_start = true, clients = {tabnine = {enabled = true}}}
|
||||||
|
local coq = require('coq')
|
||||||
|
vim.cmd('COQnow')
|
@ -1,26 +1,15 @@
|
|||||||
local function setup_servers()
|
local function setup_servers()
|
||||||
require'lspinstall'.setup(coq.lsp_ensure_capabilities())
|
require'lspinstall'.setup()
|
||||||
local servers = require'lspinstall'.installed_servers()
|
local servers = require'lspinstall'.installed_servers()
|
||||||
for _, server in pairs(servers) do require'lspconfig'[server].setup {} end
|
for _, server in pairs(servers) do
|
||||||
|
require'lspconfig'[server].setup{}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
setup_servers()
|
||||||
|
|
||||||
-- Automatically reload after `:LspInstall <server>` so we don't have to restart neovim
|
-- Automatically reload after `:LspInstall <server>` so we don't have to restart neovim
|
||||||
require'lspinstall'.post_install_hook = function ()
|
require'lspinstall'.post_install_hook = function ()
|
||||||
setup_servers() -- reload installed servers
|
setup_servers() -- reload installed servers
|
||||||
vim.cmd("bufdo e") -- this triggers the FileType autocmd that starts the server
|
vim.cmd("bufdo e") -- this triggers the FileType autocmd that starts the server
|
||||||
end
|
end
|
||||||
|
|
||||||
-- setup coq.lua
|
|
||||||
local lsp = require 'lspconfig'
|
|
||||||
require("packer").loader("coq_nvim coq.artifacts")
|
|
||||||
vim.g.coq_settings = {auto_start = true, clients = {tabnine = {enabled = true}}}
|
|
||||||
local coq = require 'coq'
|
|
||||||
setup_servers()
|
|
||||||
lsp.gopls.setup(coq.lsp_ensure_capabilities({
|
|
||||||
cmd = {"gopls", "serve"},
|
|
||||||
settings = {gopls = {analyses = {unusedparams = true}, staticcheck = true}}
|
|
||||||
}))
|
|
||||||
|
|
||||||
-- load coq.lua
|
|
||||||
vim.cmd("COQnow -s")
|
|
||||||
|
@ -79,6 +79,7 @@ _G.packer_plugins = {
|
|||||||
},
|
},
|
||||||
coq_nvim = {
|
coq_nvim = {
|
||||||
after = { "coq.artifacts" },
|
after = { "coq.artifacts" },
|
||||||
|
config = { "\27LJ\1\2+\0\0\2\0\2\0\0044\0\0\0%\1\1\0>\0\2\1G\0\1\0\16plugins.coq\frequire\0" },
|
||||||
loaded = false,
|
loaded = false,
|
||||||
needs_bufread = true,
|
needs_bufread = true,
|
||||||
path = "/home/juan/.local/share/nvim/site/pack/packer/opt/coq_nvim"
|
path = "/home/juan/.local/share/nvim/site/pack/packer/opt/coq_nvim"
|
||||||
@ -229,10 +230,11 @@ vim.cmd [[augroup packer_load_aucmds]]
|
|||||||
vim.cmd [[au!]]
|
vim.cmd [[au!]]
|
||||||
-- Event lazy-loads
|
-- Event lazy-loads
|
||||||
time([[Defining lazy-load event autocommands]], true)
|
time([[Defining lazy-load event autocommands]], true)
|
||||||
vim.cmd [[au BufAdd * ++once lua require("packer.load")({'shade.nvim'}, { event = "BufAdd *" }, _G.packer_plugins)]]
|
vim.cmd [[au BufRead * ++once lua require("packer.load")({'nvim-treesitter', 'nvim-lspconfig', 'vim-sandwich'}, { event = "BufRead *" }, _G.packer_plugins)]]
|
||||||
vim.cmd [[au FileType html,css ++once lua require("packer.load")({'emmet-vim'}, { event = "FileType html,css" }, _G.packer_plugins)]]
|
vim.cmd [[au FileType html,css ++once lua require("packer.load")({'emmet-vim'}, { event = "FileType html,css" }, _G.packer_plugins)]]
|
||||||
vim.cmd [[au VimEnter * ++once lua require("packer.load")({'packer.nvim', 'nvim-base16'}, { event = "VimEnter *" }, _G.packer_plugins)]]
|
vim.cmd [[au VimEnter * ++once lua require("packer.load")({'packer.nvim', 'nvim-base16'}, { event = "VimEnter *" }, _G.packer_plugins)]]
|
||||||
vim.cmd [[au BufRead * ++once lua require("packer.load")({'nvim-treesitter', 'nvim-lspconfig', 'vim-sandwich'}, { event = "BufRead *" }, _G.packer_plugins)]]
|
vim.cmd [[au InsertEnter * ++once lua require("packer.load")({'coq_nvim'}, { event = "InsertEnter *" }, _G.packer_plugins)]]
|
||||||
|
vim.cmd [[au BufAdd * ++once lua require("packer.load")({'shade.nvim'}, { event = "BufAdd *" }, _G.packer_plugins)]]
|
||||||
time([[Defining lazy-load event autocommands]], false)
|
time([[Defining lazy-load event autocommands]], false)
|
||||||
vim.cmd("augroup END")
|
vim.cmd("augroup END")
|
||||||
if should_profile then save_profiles() end
|
if should_profile then save_profiles() end
|
||||||
|
Loading…
Reference in New Issue
Block a user