From 3bbde1c40332701e68281118ddd92213ca788f68 Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Sat, 16 Jul 2022 15:14:22 -0500 Subject: refactor(nvim): rename modules to better align with neovim modules --- nvim/.config/nvim/lua/tobyvin/autocmds.lua | 129 +++++++++++++++++++++++++ nvim/.config/nvim/lua/tobyvin/autocommands.lua | 129 ------------------------- nvim/.config/nvim/lua/tobyvin/init.lua | 4 +- nvim/.config/nvim/lua/tobyvin/keymaps.lua | 40 ++++++++ nvim/.config/nvim/lua/tobyvin/mappings.lua | 40 -------- 5 files changed, 171 insertions(+), 171 deletions(-) create mode 100644 nvim/.config/nvim/lua/tobyvin/autocmds.lua delete mode 100644 nvim/.config/nvim/lua/tobyvin/autocommands.lua create mode 100644 nvim/.config/nvim/lua/tobyvin/keymaps.lua delete mode 100644 nvim/.config/nvim/lua/tobyvin/mappings.lua (limited to 'nvim/.config') diff --git a/nvim/.config/nvim/lua/tobyvin/autocmds.lua b/nvim/.config/nvim/lua/tobyvin/autocmds.lua new file mode 100644 index 0000000..b626c91 --- /dev/null +++ b/nvim/.config/nvim/lua/tobyvin/autocmds.lua @@ -0,0 +1,129 @@ +local M = {} + +M.setup = function() + local augroup_user = vim.api.nvim_create_augroup("Default", { clear = true }) + + vim.api.nvim_create_autocmd("User", { + group = augroup_user, + pattern = "BDeletePre", + callback = function(opts) + local windows = vim.tbl_filter(function(win) + return vim.api.nvim_win_get_buf(win) == opts.bufnr + end, vim.api.nvim_list_wins()) + + local buffers = vim.tbl_filter(function(buf) + return vim.api.nvim_buf_is_valid(buf) and vim.bo[buf].buflisted + end, vim.api.nvim_list_bufs()) + + if buffers ~= nil and #buffers > 1 then + local next_buffer = vim.fn.winbufnr(vim.fn.winnr("#")) + + if not next_buffer then + for i, v in ipairs(buffers) do + if v == opts.bufnr then + next_buffer = buffers[i % #buffers + 1] + break + end + end + end + + for _, win in ipairs(windows) do + vim.api.nvim_win_set_buf(win, next_buffer) + end + end + end, + desc = "BDeletePre", + }) + + local augroup_default = vim.api.nvim_create_augroup("Default", { clear = true }) + + vim.api.nvim_create_autocmd("TextYankPost", { + group = augroup_default, + pattern = "*", + callback = function() + vim.highlight.on_yank() + end, + desc = "Highlight yank", + }) + + vim.api.nvim_create_autocmd("BufWritePre", { + group = augroup_default, + pattern = "*", + callback = function() + local cursor = vim.api.nvim_win_get_cursor(0) + vim.cmd("%s/\\s\\+$//e") + vim.api.nvim_win_set_cursor(0, cursor) + end, + desc = "Trim whitespace on write", + }) + + vim.api.nvim_create_autocmd("FileType", { + group = augroup_default, + pattern = "help", + callback = function() + vim.opt_local.wrap = true + vim.opt_local.textwidth = 120 + vim.opt_local.colorcolumn = nil + vim.cmd("wincmd L") + vim.cmd("vertical resize " .. vim.opt.textwidth:get()) + end, + desc = "Resize help window", + }) + + vim.api.nvim_create_autocmd("FileType", { + group = augroup_default, + pattern = "qf", + callback = function() + vim.opt_local.buflisted = false + end, + desc = "Hide filetype from buffer list", + }) + + vim.api.nvim_create_autocmd("FileType", { + group = augroup_default, + pattern = { "xml", "html", "xhtml", "css", "scss", "javascript", "lua", "dart" }, + callback = function() + vim.opt_local.shiftwidth = 2 + vim.opt_local.tabstop = 2 + end, + desc = "Set file specific tabstop", + }) + + local augroup_search_highlighting = vim.api.nvim_create_augroup("SearchHighlighting", { clear = true }) + + vim.api.nvim_create_autocmd("CmdlineEnter", { + group = augroup_search_highlighting, + pattern = "/,?", + callback = function() + vim.opt.hlsearch = true + end, + desc = "Enable hlsearch on input", + }) + + vim.api.nvim_create_autocmd("CmdlineLeave", { + group = augroup_search_highlighting, + pattern = "/,?", + callback = function() + vim.opt.hlsearch = false + end, + desc = "Disable hlsearch on exit", + }) + + -- TODO: figure out how to do this correctly + -- config reloading + -- local configs = vim.api.nvim_create_augroup("Configs", { clear = true }) + -- + -- vim.api.nvim_create_autocmd("BufWritePost", { + -- group = configs, + -- pattern = ".nvimrc.lua", + -- command = "source ", + -- }) + -- + -- vim.api.nvim_create_autocmd("BufWritePost", { + -- group = configs, + -- pattern = os.getenv("HOME") .. "/.config/nvim/*/*.lua", + -- command = "source $MYVIMRC", + -- }) +end + +return M diff --git a/nvim/.config/nvim/lua/tobyvin/autocommands.lua b/nvim/.config/nvim/lua/tobyvin/autocommands.lua deleted file mode 100644 index b626c91..0000000 --- a/nvim/.config/nvim/lua/tobyvin/autocommands.lua +++ /dev/null @@ -1,129 +0,0 @@ -local M = {} - -M.setup = function() - local augroup_user = vim.api.nvim_create_augroup("Default", { clear = true }) - - vim.api.nvim_create_autocmd("User", { - group = augroup_user, - pattern = "BDeletePre", - callback = function(opts) - local windows = vim.tbl_filter(function(win) - return vim.api.nvim_win_get_buf(win) == opts.bufnr - end, vim.api.nvim_list_wins()) - - local buffers = vim.tbl_filter(function(buf) - return vim.api.nvim_buf_is_valid(buf) and vim.bo[buf].buflisted - end, vim.api.nvim_list_bufs()) - - if buffers ~= nil and #buffers > 1 then - local next_buffer = vim.fn.winbufnr(vim.fn.winnr("#")) - - if not next_buffer then - for i, v in ipairs(buffers) do - if v == opts.bufnr then - next_buffer = buffers[i % #buffers + 1] - break - end - end - end - - for _, win in ipairs(windows) do - vim.api.nvim_win_set_buf(win, next_buffer) - end - end - end, - desc = "BDeletePre", - }) - - local augroup_default = vim.api.nvim_create_augroup("Default", { clear = true }) - - vim.api.nvim_create_autocmd("TextYankPost", { - group = augroup_default, - pattern = "*", - callback = function() - vim.highlight.on_yank() - end, - desc = "Highlight yank", - }) - - vim.api.nvim_create_autocmd("BufWritePre", { - group = augroup_default, - pattern = "*", - callback = function() - local cursor = vim.api.nvim_win_get_cursor(0) - vim.cmd("%s/\\s\\+$//e") - vim.api.nvim_win_set_cursor(0, cursor) - end, - desc = "Trim whitespace on write", - }) - - vim.api.nvim_create_autocmd("FileType", { - group = augroup_default, - pattern = "help", - callback = function() - vim.opt_local.wrap = true - vim.opt_local.textwidth = 120 - vim.opt_local.colorcolumn = nil - vim.cmd("wincmd L") - vim.cmd("vertical resize " .. vim.opt.textwidth:get()) - end, - desc = "Resize help window", - }) - - vim.api.nvim_create_autocmd("FileType", { - group = augroup_default, - pattern = "qf", - callback = function() - vim.opt_local.buflisted = false - end, - desc = "Hide filetype from buffer list", - }) - - vim.api.nvim_create_autocmd("FileType", { - group = augroup_default, - pattern = { "xml", "html", "xhtml", "css", "scss", "javascript", "lua", "dart" }, - callback = function() - vim.opt_local.shiftwidth = 2 - vim.opt_local.tabstop = 2 - end, - desc = "Set file specific tabstop", - }) - - local augroup_search_highlighting = vim.api.nvim_create_augroup("SearchHighlighting", { clear = true }) - - vim.api.nvim_create_autocmd("CmdlineEnter", { - group = augroup_search_highlighting, - pattern = "/,?", - callback = function() - vim.opt.hlsearch = true - end, - desc = "Enable hlsearch on input", - }) - - vim.api.nvim_create_autocmd("CmdlineLeave", { - group = augroup_search_highlighting, - pattern = "/,?", - callback = function() - vim.opt.hlsearch = false - end, - desc = "Disable hlsearch on exit", - }) - - -- TODO: figure out how to do this correctly - -- config reloading - -- local configs = vim.api.nvim_create_augroup("Configs", { clear = true }) - -- - -- vim.api.nvim_create_autocmd("BufWritePost", { - -- group = configs, - -- pattern = ".nvimrc.lua", - -- command = "source ", - -- }) - -- - -- vim.api.nvim_create_autocmd("BufWritePost", { - -- group = configs, - -- pattern = os.getenv("HOME") .. "/.config/nvim/*/*.lua", - -- command = "source $MYVIMRC", - -- }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/init.lua b/nvim/.config/nvim/lua/tobyvin/init.lua index 704cab3..4eb863c 100644 --- a/nvim/.config/nvim/lua/tobyvin/init.lua +++ b/nvim/.config/nvim/lua/tobyvin/init.lua @@ -7,10 +7,10 @@ M.setup = function() -- end require("tobyvin.options").setup() - require("tobyvin.mappings").setup() + require("tobyvin.autocmds").setup() + require("tobyvin.keymaps").setup() require("tobyvin.plugins").setup() require("tobyvin.lsp").setup() - require("tobyvin.autocommands").setup() end return M diff --git a/nvim/.config/nvim/lua/tobyvin/keymaps.lua b/nvim/.config/nvim/lua/tobyvin/keymaps.lua new file mode 100644 index 0000000..8e916d3 --- /dev/null +++ b/nvim/.config/nvim/lua/tobyvin/keymaps.lua @@ -0,0 +1,40 @@ +local utils = require("tobyvin.utils") +local M = {} + +M.quit = function() + vim.cmd("quit") +end + +M.quit_force = function() + vim.cmd("quit!") +end + +M.write = function() + vim.cmd("write") +end + +M.write_force = function() + vim.cmd("write!") +end + +M.close = function() + utils.bdelete() + -- vim.cmd("bdelete") +end + +M.close_force = function() + utils.bdelete({ force = true }) + -- vim.cmd("bdelete!") +end + +M.setup = function() + local nmap = utils.create_map_group("n", "") + nmap("q", M.quit, { desc = "Quit" }) + nmap("Q", M.quit_force, { desc = "Quit!" }) + nmap("w", M.write, { desc = "Write" }) + nmap("W", M.write_force, { desc = "Write!" }) + nmap("c", M.close, { desc = "Close" }) + nmap("C", M.close_force, { desc = "Close!" }) +end + +return M diff --git a/nvim/.config/nvim/lua/tobyvin/mappings.lua b/nvim/.config/nvim/lua/tobyvin/mappings.lua deleted file mode 100644 index 8e916d3..0000000 --- a/nvim/.config/nvim/lua/tobyvin/mappings.lua +++ /dev/null @@ -1,40 +0,0 @@ -local utils = require("tobyvin.utils") -local M = {} - -M.quit = function() - vim.cmd("quit") -end - -M.quit_force = function() - vim.cmd("quit!") -end - -M.write = function() - vim.cmd("write") -end - -M.write_force = function() - vim.cmd("write!") -end - -M.close = function() - utils.bdelete() - -- vim.cmd("bdelete") -end - -M.close_force = function() - utils.bdelete({ force = true }) - -- vim.cmd("bdelete!") -end - -M.setup = function() - local nmap = utils.create_map_group("n", "") - nmap("q", M.quit, { desc = "Quit" }) - nmap("Q", M.quit_force, { desc = "Quit!" }) - nmap("w", M.write, { desc = "Write" }) - nmap("W", M.write_force, { desc = "Write!" }) - nmap("c", M.close, { desc = "Close" }) - nmap("C", M.close_force, { desc = "Close!" }) -end - -return M -- cgit v1.2.3-70-g09d2