@@ 5,6 5,7 @@ vim.opt.number = true
vim.opt.tabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = false
+vim.opt.signcolumn = 'number'
vim.keymap.set('n', '<leader>ff', '<cmd>Telescope find_files<cr>')
vim.keymap.set('n', '<leader>fg', '<cmd>Telescope live_grep<cr>')
@@ 11,10 11,10 @@ end
-- Mappings.
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
local opts = { noremap=true, silent=true }
-vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, opts)
+vim.keymap.set('n', '<leader>ee', vim.diagnostic.open_float, opts)
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts)
-vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, opts)
+vim.keymap.set('n', '<leader>ew', vim.diagnostic.setloclist, opts)
-- Use an on_attach function to only map the following keys
-- after the language server attaches to the current buffer
@@ 47,9 47,12 @@ local lsp_flags = {
debounce_text_changes = 150,
}
+local lsp_server_dir = vim.fn.stdpath('data')..'/lsp_servers'
+
lspconfig['rust_analyzer'].setup{
on_attach = on_attach,
flags = lsp_flags,
+ cmd = {lsp_server_dir..'/rust/rust-analyzer'},
-- Server-specific settings...
settings = {
["rust-analyzer"] = {}
@@ 59,7 62,7 @@ lspconfig['rust_analyzer'].setup{
lspconfig['sumneko_lua'].setup{
on_attach = on_attach,
flags = lsp_flags,
- cmd = {vim.fn.stdpath('data')..'/lsp_servers/sumneko_lua/extension/server/bin/lua-language-server'},
+ cmd = {lsp_server_dir..'/sumneko_lua/extension/server/bin/lua-language-server'},
settings = {
Lua = {
diagnostics = {
@@ 72,13 75,32 @@ lspconfig['sumneko_lua'].setup{
lspconfig['gopls'].setup{
on_attach = on_attach,
flags = lsp_flags,
+ cmd = {lsp_server_dir..'/gopls/gopls'},
+ -- https://github.com/golang/tools/blob/master/gopls/doc/settings.md
+ --settings = {
+ -- ui = {
+ -- documentation = {
+ -- hoverKind = 'FullDocumentation'
+ -- }
+ -- }
+ --},
}
lspconfig['zls'].setup{
on_attach = on_attach,
flags = lsp_flags,
+ cmd = {lsp_server_dir..'/zls/package/zls'},
}
lsp_installer.setup{
automatic_installation = true,
}
+
+vim.diagnostic.config({
+ virtual_text = false,
+ update_in_insert = false,
+ signs = true,
+ float = {
+ border = 'single',
+ },
+})
@@ 19,6 19,7 @@ if has('nvim')
endif
if has('nvim-0.5')
Plug 'neovim/nvim-lspconfig'
+ Plug 'williamboman/nvim-lsp-installer', {'branch': 'main'}
Plug 'nvim-telescope/telescope.nvim'
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'jlanzarotta/bufexplorer'
@@ 30,6 31,7 @@ set modeline
set nu
set completeopt=menuone,noinsert,noselect
set tabstop=4 shiftwidth=4
+set signcolumn=number
nmap <Leader>ff :FZF<cr>
nmap <Leader>nt :NERDTreeToggle<cr>
nmap <Leader>nf :NERDTreeFind<cr>
@@ 42,6 44,7 @@ au FileType html setlocal expandtab tabstop=2 shiftwidth=2
au FileType json setlocal expandtab tabstop=2 shiftwidth=2
au FileType javascript setlocal expandtab tabstop=4 shiftwidth=4
au BufNewFile,BufRead *.xaml set filetype=xml
+au BufNewFile,BufRead *.nomad set filetype=hcl
if has('nvim-0.5')
silent! colorscheme OceanicNext