neovim

Personal neovim configuration files
git clone git://gtms.dev/neovim.git
Log | Files | Refs

commit ec8d94cad887f6b15d9ca43d4c9abcb653806d95
parent 6f26737ed1c0b71100841a5427832d5f0add0183
Author: Tomas Nemec <nemi@skaut.cz>
Date:   Sun,  7 Nov 2021 23:54:19 +0100

update

Diffstat:
Acolors/my-default.vim | 0
Minit.lua | 6+-----
Alua/my-default.lua | 111+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mlua/tms/lsp/init.lua | 28+++++++++++++++++++++++-----
Mlua/tms/lsp/servers.lua | 3++-
Mlua/tms/p/cmp/init.lua | 2+-
Mlua/tms/plugins.lua | 18+++++++++---------
Mlua/tms/u/reload.lua | 16+++-------------
8 files changed, 150 insertions(+), 34 deletions(-)

diff --git a/colors/my-default.vim b/colors/my-default.vim diff --git a/init.lua b/init.lua @@ -68,11 +68,8 @@ else end -- Colorscheme -local colors = require('tms.colors') vim.cmd('syntax enable') -vim.opt.background = colors.get_theme() or 'dark' -vim.cmd('colorscheme ' .. (colors.get_scheme() or 'solarized')) -require('tms.colors').setup() +require('colorbuddy').colorscheme('my-default') -- MAPPINGS local nmap = vim.keymap.nmap @@ -175,7 +172,6 @@ au.addListeners({ ['user-yank-high'] = {[[TextYankPost * silent! lua require'vim.highlight'.on_yank()]]}, ['user-colorscheme'] = { [[ColorScheme * lua require('tms.u.reload').colors()]], - [[ColorSchemePre * lua require('tms.u.reload').colorsPre()]], }, -- ['java-lsp'] = { -- [[FileType java lua require('jdtls').start_or_attach({cmd = {'java-lsp.sh'}})]], diff --git a/lua/my-default.lua b/lua/my-default.lua @@ -0,0 +1,111 @@ +local Color, colors, Group, groups, styles = require('colorbuddy').setup() +package.path = '/home/tms/.cache/wal/?.lua;' .. package.path +local c = require('colors-lua') +-- Special +Color.new('backg', c.background) +Color.new('foreg', c.foreground) +Color.new('cursor', c.cursor) + +-- colors +Color.new('black', c.color0) +Color.new('red', c.color1) +Color.new('green', c.color2) +Color.new('yellow', c.color3) +Color.new('blue', c.color4) +Color.new('magenta', c.color5) +Color.new('cyan', c.color6) +Color.new('white', c.color7) + +Color.new('c0', c.color0) +Color.new('c1', c.color1) +Color.new('c2', c.color2) +Color.new('c3', c.color3) +Color.new('c4', c.color4) +Color.new('c5', c.color5) +Color.new('c6', c.color6) +Color.new('c7', c.color7) +Color.new('c8', c.color8) +Color.new('c9', c.color9) +Color.new('c10', c.color10) +Color.new('c11', c.color11) +Color.new('c12', c.color12) +Color.new('c13', c.color13) +Color.new('c14', c.color14) +Color.new('c15', c.color15) + +Group.new('Normal' , colors.foreg , colors.backg) +Group.new('NonText' , colors.c0 , colors.none) +Group.new('Comment' , colors.c8 , colors.none) +Group.new('Conceal' , colors.none , colors.none) +Group.new('Constant' , colors.c3 , colors.none) +Group.new('Error' , colors.c7 , colors.c1) +Group.new('Identifier' , colors.c1 , colors.none , styles.bold) +Group.new('Ignore' , colors.c0 , colors.c8) +Group.new('PreProc' , colors.c3 , colors.none) +Group.new('Special' , colors.c6 , colors.none) +Group.new('Statement' , colors.c1 , colors.none) +Group.new('String' , colors.c2 , colors.none) +Group.new('Number' , colors.c3 , colors.none) +Group.new('Todo' , colors.c0 , colors.c2) +Group.new('Type' , colors.c3 , colors.none) +Group.new('Underlined' , colors.c1 , colors.none , styles.underline) +Group.new('StatusLine' , colors.c0 , colors.c7) +Group.new('StatusLineNC' , colors.c0 , colors.c8) +Group.new('TabLine' , colors.c8 , colors.none) +Group.new('TabLineFill' , colors.c8 , colors.none) +Group.new('TabLineSel' , colors.c0 , colors.c4) +Group.new('TermCursorNC' , colors.c0 , colors.c3) +Group.new('VertSplit' , colors.c0 , colors.c8) +Group.new('Title' , colors.c4 , colors.none) +Group.new('CursorLine' , colors.c0 , colors.c2) +Group.new('LineNr' , colors.c8 , colors.none) +Group.new('CursorLineNr' , colors.c8 , colors.none) +Group.new('helpLeadBlank' , colors.c7 , colors.none) +Group.new('helpNormal' , colors.c7 , colors.none) +Group.new('Visual' , colors.c0 , colors.c1) +Group.new('VisualNOS' , colors.c1 , colors.none) +Group.new('Pmenu' , colors.c7 , colors.c8) +Group.new('PmenuSbar' , colors.c7 , colors.c6) +Group.new('PmenuSel' , colors.c0 , colors.c4) +Group.new('PmenuThumb' , colors.c8 , colors.c8) +Group.new('FoldColumn' , colors.c7 , colors.none) +Group.new('Folded' , colors.c8 , colors.none) +Group.new('WildMenu' , colors.c0 , colors.c2) +Group.new('SpecialKey' , colors.c8 , colors.none) +Group.new('DiffAdd' , colors.c2 , colors.none) +Group.new('DiffChange' , colors.c8 , colors.none) +Group.new('DiffDelete' , colors.c1 , colors.none) +Group.new('DiffText' , colors.c4 , colors.none) +Group.new('IncSearch' , colors.c0 , colors.c3) +Group.new('Search' , colors.c0 , colors.c3) +Group.new('Directory' , colors.c4 , colors.none) +Group.new('MatchParen' , colors.c8 , colors.c1) +Group.new('ColorColumn' , colors.c0 , colors.c4) +Group.new('signColumn' , colors.c4 , colors.none) +Group.new('ErrorMsg' , colors.c8 , colors.none) +Group.new('ModeMsg' , colors.c2 , colors.none) +Group.new('MoreMsg' , colors.c2 , colors.none) +Group.new('Question' , colors.c4 , colors.none) +Group.new('WarningMsg' , colors.c0 , colors.c1) +Group.new('Cursor' , colors.cursor , colors.none) +Group.new('Structure' , colors.c5 , colors.none) +Group.new('CursorColumn' , colors.c7 , colors.c8) +Group.new('ModeMsg' , colors.c7 , colors.none) +Group.new('SpellBad' , colors.c1 , colors.none , styles.underline) +Group.new('SpellCap' , colors.c4 , colors.none , styles.underline) +Group.new('SpellLocal' , colors.c5 , colors.none , styles.underline) +Group.new('SpellRare' , colors.c6 , colors.none , styles.underline) +Group.new('Boolean' , colors.c5 , colors.none) +Group.new('Character' , colors.c1 , colors.none) +Group.new('Conditional' , colors.c5 , colors.none) +Group.new('Define' , colors.c5 , colors.none) +Group.new('Delimiter' , colors.c5 , colors.none) +Group.new('Float' , colors.c5 , colors.none) +Group.new('Include' , colors.c4 , colors.none) +Group.new('Keyword' , colors.c5 , colors.none) +Group.new('Label' , colors.c3 , colors.none) +Group.new('Operator' , colors.c7 , colors.none) +Group.new('Repeat' , colors.c3 , colors.none) +Group.new('SpecialChar' , colors.c5 , colors.none) +Group.new('Tag' , colors.c3 , colors.none) +Group.new('Typedef' , colors.c3 , colors.none) diff --git a/lua/tms/lsp/init.lua b/lua/tms/lsp/init.lua @@ -13,7 +13,12 @@ local keybind = function(bufnr) vim.keymap.inoremap {'<c-p>', vim.lsp.buf.signature_help, silent = true, buffer = bufnr} vim.keymap.nnoremap {'gr', vim.lsp.buf.references, silent = true, buffer = bufnr} vim.keymap.nnoremap {'ga', t.lsp_code_actions, silent = true, buffer = bufnr} - vim.keymap.vnoremap {'ga', ':Telescope lsp_range_code_actions theme=dropdown previewer=false<cr>', silent = true, buffer = bufnr} + vim.keymap.vnoremap { + 'ga', + ':Telescope lsp_range_code_actions theme=dropdown previewer=false<cr>', + silent = true, + buffer = bufnr, + } vim.keymap.nnoremap {'gn', vim.lsp.buf.rename, silent = true, buffer = bufnr} vim.keymap.nnoremap {'gm', t.lsp_document_symbols, silent = true, buffer = bufnr} -- formatting @@ -36,18 +41,31 @@ local custom_attach = function(client, bufnr) end M.setup = function() - local lspc = require('lspconfig') local lsp_installer = require('nvim-lsp-installer') lsp_installer.on_server_ready(function(server) + local function finish(o) + server:setup(o) + vim.cmd [[ do User LspAttachBuffers ]] + end + local opts = {} - opts = servers.modify_opts(server.name, opts) opts.on_attach = custom_attach + opts = servers.modify_opts(server.name, opts) opts.capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities()) - server:setup(opts) - vim.cmd [[ do User LspAttachBuffers ]] + + if server.name == 'sumneko_lua' then + opts = vim.tbl_deep_extend('force', server:get_default_options(), opts) + local luadev = require('lua-dev').setup({lspconfig = opts}) + finish(luadev) + else + finish(opts) + end end) + + local lspc = require('lspconfig') lspc.dartls.setup(servers.dartls(custom_attach)) lspc.gdscript.setup(servers.gdscript(custom_attach)) + lspc.sumneko_lua.setup(servers.lua(custom_attach)) end return M diff --git a/lua/tms/lsp/servers.lua b/lua/tms/lsp/servers.lua @@ -51,9 +51,10 @@ M.efm = function(attach_fn) } end -M.lua = function() +M.lua = function(attach_fn) return require('lua-dev').setup({ lspconfig = { + on_attach = attach_fn, cmd = { '/home/tms/.cache/nvim/lspconfig/sumneko_lua/lua-language-server/bin/Linux/lua-language-server', '-E', diff --git a/lua/tms/p/cmp/init.lua b/lua/tms/p/cmp/init.lua @@ -37,7 +37,7 @@ M.setup = function() ['<Right>'] = cmp.mapping.confirm({behavior = cmp.ConfirmBehavior.Insert, select = true}), }, sources = M.sources, - experimental = {ghost_text = true}, + experimental = {ghost_text = true, native_menu = true}, }) end diff --git a/lua/tms/plugins.lua b/lua/tms/plugins.lua @@ -243,15 +243,15 @@ return packer.startup({ } -- colorscheme - use {'ishan9299/nvim-solarized-lua', config = function() end} - use { - 'morhetz/gruvbox', - config = function() - vim.g.gruvbox_contrast_dark = 'hard' - vim.g.gruvbox_contrast_light = 'soft' - end, - } - use {'tjdevries/colorbuddy.nvim', after = {'gruvbox', 'nvim-solarized-lua'}} + -- use {'ishan9299/nvim-solarized-lua', config = function() end} + -- use { + -- 'morhetz/gruvbox', + -- config = function() + -- vim.g.gruvbox_contrast_dark = 'hard' + -- vim.g.gruvbox_contrast_light = 'soft' + -- end, + -- } + use {'tjdevries/colorbuddy.nvim'} -- http use {disable = true, 'nicwest/vim-http'} diff --git a/lua/tms/u/reload.lua b/lua/tms/u/reload.lua @@ -2,20 +2,10 @@ local reloader = require('plenary.reload') local M = {} -local colorbuddy = function() - reloader.reload_module('colorbuddy') - reloader.reload_module('colorbuddy.color') - require('tms.colors').setup() -end - -M.colorsPre = function() - vim.g.gruvbox_contrast_dark = 'hard' - vim.g.gruvbox_contrast_light = 'soft' - -- vim.cmd [[highlight clear]] -end - M.colors = function() - colorbuddy() + reloader.reload_module('my-default') + reloader.reload_module('colors-lua') + require('colorbuddy').colorscheme('my-default') end return M