From ea0cdc2c9e43722c3f2746f1979ff58f0aa35dd9 Mon Sep 17 00:00:00 2001 From: Shadow Cat Date: Wed, 3 Aug 2022 14:22:50 -0400 Subject: [PATCH] fixed reloading plugin files and highlight after colorscheme --- init.lua | 2 ++ lua/config/neovide.lua | 27 ++++++++++++++++++++++ lua/config/plugins/tree.lua | 2 +- lua/config/plugins/visual.lua | 6 +++++ lua/config/reload.lua | 42 ++++++++++++++++++++++++++--------- lua/config/settings.lua | 4 ---- lua/config/theme.lua | 5 +++++ 7 files changed, 72 insertions(+), 16 deletions(-) create mode 100644 lua/config/neovide.lua create mode 100644 lua/config/theme.lua diff --git a/init.lua b/init.lua index 555c5be..2a1c90b 100644 --- a/init.lua +++ b/init.lua @@ -2,4 +2,6 @@ for _, name in ipairs({ 'reload', 'settings', 'plugins', + 'neovide', + 'theme' }) do require('config.' .. name) end diff --git a/lua/config/neovide.lua b/lua/config/neovide.lua new file mode 100644 index 0000000..9e1b2d5 --- /dev/null +++ b/lua/config/neovide.lua @@ -0,0 +1,27 @@ +vim.g.gui_font_default_size = 14 +vim.g.gui_font_size = vim.g.gui_font_default_size +vim.g.gui_font_face = "Comic Code Ligatures" + +RefreshGuiFont = function() + vim.opt.guifont = string.format("%s:h%s", vim.g.gui_font_face, vim.g.gui_font_size) +end + +ResizeGuiFont = function(delta) + vim.g.gui_font_size = vim.g.gui_font_size + delta + RefreshGuiFont() +end + +ResetGuiFont = function() + vim.g.gui_font_size = vim.g.gui_font_default_size + RefreshGuiFont() +end + +-- Call function on startup to set default value +ResetGuiFont() + +-- Keymaps + +local opts = { noremap = true, silent = true } + +vim.keymap.set({ 'n', 'i' }, "", function() ResizeGuiFont(1) end, opts) +vim.keymap.set({ 'n', 'i' }, "", function() ResizeGuiFont(-1) end, opts) diff --git a/lua/config/plugins/tree.lua b/lua/config/plugins/tree.lua index 06beca9..2ccbc92 100644 --- a/lua/config/plugins/tree.lua +++ b/lua/config/plugins/tree.lua @@ -16,7 +16,7 @@ return function(use) } }, window = { - width = 30, + width = 20, }, } diff --git a/lua/config/plugins/visual.lua b/lua/config/plugins/visual.lua index 93348ac..a6d561f 100644 --- a/lua/config/plugins/visual.lua +++ b/lua/config/plugins/visual.lua @@ -4,6 +4,8 @@ return function(use) config = function() require 'onedark'.setup { style = 'darker' } require 'onedark'.load() + package.loaded['config.theme'] = nil + require 'config.theme' end } use { @@ -23,4 +25,8 @@ return function(use) 'lewis6991/gitsigns.nvim', config = function() require 'gitsigns'.setup() end } + use { + 'sunjon/shade.nvim', + config = function() require 'shade'.setup() end + } end diff --git a/lua/config/reload.lua b/lua/config/reload.lua index 40e6c47..da9f138 100644 --- a/lua/config/reload.lua +++ b/lua/config/reload.lua @@ -1,19 +1,39 @@ -local group = vim.api.nvim_create_augroup("reload", {}) +local group = vim.api.nvim_create_augroup('reload', {}) -local post_write = function(path, cmd) - vim.api.nvim_create_autocmd("BufWritePost", { +local post_write = function(path, fn) + vim.api.nvim_create_autocmd('BufWritePost', { group = group, - pattern = "**/lua/config/" .. path, - command = cmd, + pattern = '**/lua/config/' .. path, + callback = fn, }) end for _, path in ipairs({ - "reload.lua", - "settings.lua", - "utils.lua" -}) do post_write(path, "source ") end + 'reload.lua', + 'settings.lua', + 'utils.lua', + 'neovide.lua', + 'theme.lua', +}) do post_write(path, function(arg) dofile(arg.file) end) end --- allows you to install and clean plugins after writing to the file -post_write("plugins.lua", "source | PackerCompile") +-- allows you to install / clean / update plugins +-- after writing to the file + +--- +--- @param arg {file: string} +local update_plugins = function(arg) + -- unload the file if it's not plugins.lua + local i = arg.file:find("config/plugins/") + if i ~= nil then + local mod = arg.file:sub(i):gsub("/", "."):sub(0, -5) + package.loaded[mod] = nil + end + -- reload plugins.lua and compile + package.loaded['config.plugins'] = nil + require 'config.plugins' + require 'packer'.compile() +end + +post_write('plugins.lua', update_plugins) +post_write('plugins/*', update_plugins) diff --git a/lua/config/settings.lua b/lua/config/settings.lua index 05b9d17..dc0ce4a 100644 --- a/lua/config/settings.lua +++ b/lua/config/settings.lua @@ -28,10 +28,6 @@ else o.termguicolors = false end --- highlight extra white space with red -vim.api.nvim_set_hl(0, 'TrailingWhitespace', { ctermbg = 'red', bg = '#ff5555' }) -vim.cmd([[match TrailingWhitespace /\s\+$/]]) - -- diagnostics local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " } for type, icon in pairs(signs) do diff --git a/lua/config/theme.lua b/lua/config/theme.lua new file mode 100644 index 0000000..649bf70 --- /dev/null +++ b/lua/config/theme.lua @@ -0,0 +1,5 @@ +-- highlight extra white space with red +vim.api.nvim_set_hl(0, 'ExtraWhitespace', { ctermbg = 'red', bg = '#ff8888' }) +vim.cmd [[match ExtraWhitespace /\s\+$/]] +print("hello???") +