diff options
Diffstat (limited to 'nvim/.config')
-rw-r--r-- | nvim/.config/nvim/after/ftplugin/dashboard.lua | 9 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/conform.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/ferris.lua | 4 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/nvim-lint.lua | 40 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/peek.lua | 13 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/presence.lua | 2 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/autocmds.lua | 8 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/commands.lua | 6 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/dap/adapters.lua | 4 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/utils.lua | 16 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/utils/dashboard.lua | 18 |
11 files changed, 69 insertions, 52 deletions
diff --git a/nvim/.config/nvim/after/ftplugin/dashboard.lua b/nvim/.config/nvim/after/ftplugin/dashboard.lua new file mode 100644 index 0000000..019d8ef --- /dev/null +++ b/nvim/.config/nvim/after/ftplugin/dashboard.lua @@ -0,0 +1,9 @@ +vim.keymap.set("n", "<leader>sr", U.session.read, { + buffer = 0, + desc = "read session", +}) + +vim.keymap.set("n", "<C-n>", U.dashboard.next_fortune, { + buffer = 0, + desc = "next fortune", +}) diff --git a/nvim/.config/nvim/lua/plugins/conform.lua b/nvim/.config/nvim/lua/plugins/conform.lua index 7e65c73..fc7eaf4 100644 --- a/nvim/.config/nvim/lua/plugins/conform.lua +++ b/nvim/.config/nvim/lua/plugins/conform.lua @@ -18,6 +18,7 @@ local M = { sass = { "prettier" }, scss = { "prettier" }, sh = { "shfmt" }, + PKGBUILD = { "shfmt" }, ["*"] = { "injected" }, }, formatters = { diff --git a/nvim/.config/nvim/lua/plugins/ferris.lua b/nvim/.config/nvim/lua/plugins/ferris.lua index 0d4b881..d4ee82d 100644 --- a/nvim/.config/nvim/lua/plugins/ferris.lua +++ b/nvim/.config/nvim/lua/plugins/ferris.lua @@ -1,5 +1,3 @@ -local utils = require("tobyvin.utils") - ---@type LazyPluginSpec local M = { "vxpm/ferris.nvim", @@ -7,7 +5,7 @@ local M = { } function M:init() - utils.on_attach(function() + U.on_attach(function() require("ferris") end, { name = "rust_analyzer" }) end diff --git a/nvim/.config/nvim/lua/plugins/nvim-lint.lua b/nvim/.config/nvim/lua/plugins/nvim-lint.lua index a6ceaa7..6e2a64c 100644 --- a/nvim/.config/nvim/lua/plugins/nvim-lint.lua +++ b/nvim/.config/nvim/lua/plugins/nvim-lint.lua @@ -1,5 +1,3 @@ -local utils = require("tobyvin.utils") - local function find_config(filename) local config = unpack(vim.fs.find(filename, { path = vim.api.nvim_buf_get_name(0), @@ -20,13 +18,16 @@ local function try_lint() vim.list_extend(names, lint.linters_by_ft["*"] or {}) - names = vim.tbl_filter(function(name) - local linter = lint.linters[name] - if not linter then - vim.notify("Linter not found: " .. name, vim.log.levels.WARN, { title = "nvim-lint" }) - end - return linter and not (type(linter) == "table" and linter.condition and not linter.condition()) - end, names) + names = vim.iter(names) + :filter(function(name) + local linter = lint.linters[name] + if not linter then + vim.notify("Linter not found: " .. name, vim.log.levels.WARN, { title = "nvim-lint" }) + end + ---@diagnostic disable-next-line: undefined-field + return (type(linter) == "table" and linter.condition and linter.condition()) or linter + end) + :totable() if #names > 0 then lint.try_lint(names) @@ -74,25 +75,20 @@ local M = { function M:init() vim.api.nvim_create_autocmd({ "BufWritePost", "BufReadPost", "InsertLeave" }, { group = vim.api.nvim_create_augroup("nvim-lint", { clear = true }), - callback = utils.debounce(100, try_lint), + callback = U.debounce(100, try_lint), }) end function M:config(opts) local lint = require("lint") - - for name, linter in pairs(opts.linters) do - if type(linter) == "table" and type(lint.linters[name]) == "table" then - lint.linters[name] = vim.tbl_deep_extend("force", lint.linters[name], linter) - for _, arg in pairs(lint.linters[name].prepend_args) do - lint.linters[name].args = lint.linters[name].args or {} - table.insert(lint.linters[name].args, arg) - end - else - lint.linters[name] = linter - end - end lint.linters_by_ft = opts.linters_by_ft + vim.iter(opts.linters):each(function(name, linter) + linter = vim.tbl_deep_extend("keep", linter, require("lint").linters[name] or {}, { args = {} }) + vim.iter(linter.prepend_args):rev():each(function(arg) + table.insert(linter.args, 1, arg) + end) + lint.linters[name] = linter + end) end return M diff --git a/nvim/.config/nvim/lua/plugins/peek.lua b/nvim/.config/nvim/lua/plugins/peek.lua index 34facaf..4fdb963 100644 --- a/nvim/.config/nvim/lua/plugins/peek.lua +++ b/nvim/.config/nvim/lua/plugins/peek.lua @@ -17,13 +17,12 @@ function M:init() return end - vim.api.nvim_create_user_command("PeekOpen", function() - require("peek").open() - end, { desc = "open peek.nvim markdown preview" }) - - vim.api.nvim_create_user_command("PeekClose", function() - require("peek").close() - end, { desc = "close peek.nvim markdown preview" }) + vim.api.nvim_create_user_command("PeekOpen", U.lazy_require("peek").open, { + desc = "open peek.nvim markdown preview", + }) + vim.api.nvim_create_user_command("PeekClose", U.lazy_require("peek").close, { + desc = "close peek.nvim markdown preview", + }) end return M diff --git a/nvim/.config/nvim/lua/plugins/presence.lua b/nvim/.config/nvim/lua/plugins/presence.lua index e4b8f6b..a005df9 100644 --- a/nvim/.config/nvim/lua/plugins/presence.lua +++ b/nvim/.config/nvim/lua/plugins/presence.lua @@ -22,6 +22,7 @@ function M:config(opts) plugin_managers["lazy"] = "lazy" -- HACK: Overwrite functions to remove WSL related stuff + ---@diagnostic disable-next-line: duplicate-set-field function Presence:get_discord_socket_path() local sock_name = "discord-ipc-0" local sock_path = nil @@ -60,6 +61,7 @@ function M:config(opts) end -- HACK: Fix grep command for neovim socket + ---@diagnostic disable-next-line: duplicate-set-field function Presence:get_nvim_socket_paths(on_done) self.log:debug("Getting nvim socket paths...") local sockets = {} diff --git a/nvim/.config/nvim/lua/tobyvin/autocmds.lua b/nvim/.config/nvim/lua/tobyvin/autocmds.lua index d304cbf..eee8923 100644 --- a/nvim/.config/nvim/lua/tobyvin/autocmds.lua +++ b/nvim/.config/nvim/lua/tobyvin/autocmds.lua @@ -19,7 +19,7 @@ vim.api.nvim_create_autocmd("VimLeavePre", { end if vim.fn.argc() == 0 and #vim.fn.getbufinfo({ buflisted = 1, bufloaded = 1 }) > 0 then - pcall(require("tobyvin.utils.session").write) + pcall(U.session.write) end end, desc = "write session on vim exit", @@ -30,11 +30,7 @@ vim.api.nvim_create_autocmd("VimEnter", { callback = function() if vim.fn.argc() == 0 then local curr_buf = vim.api.nvim_get_current_buf() - local bufnr = require("tobyvin.utils.dashboard").setup() - vim.keymap.set("n", "<leader>sr", require("tobyvin.utils.session").read, { - buffer = bufnr, - desc = "read session", - }) + U.dashboard.setup() vim.api.nvim_buf_delete(curr_buf, {}) end end, diff --git a/nvim/.config/nvim/lua/tobyvin/commands.lua b/nvim/.config/nvim/lua/tobyvin/commands.lua index cc3ab51..f043e75 100644 --- a/nvim/.config/nvim/lua/tobyvin/commands.lua +++ b/nvim/.config/nvim/lua/tobyvin/commands.lua @@ -1,10 +1,8 @@ -local session = require("tobyvin.utils.session") - vim.api.nvim_create_user_command("W", "w", { desc = "write" }) vim.api.nvim_create_user_command("Q", "q", { desc = "quit" }) vim.api.nvim_create_user_command("Wq", "wq", { desc = "write quit" }) -vim.api.nvim_create_user_command("SessionRead", session.read, { desc = "read session" }) -vim.api.nvim_create_user_command("SessionWrite", session.write, { desc = "write session" }) +vim.api.nvim_create_user_command("SessionRead", U.session.read, { desc = "read session" }) +vim.api.nvim_create_user_command("SessionWrite", U.session.write, { desc = "write session" }) vim.api.nvim_create_user_command("Scratch", function(cmdln) local bufnr = vim.api.nvim_create_buf(true, true) vim.bo[bufnr].filetype = cmdln.args[1] diff --git a/nvim/.config/nvim/lua/tobyvin/dap/adapters.lua b/nvim/.config/nvim/lua/tobyvin/dap/adapters.lua index 6c97b66..7e2d5fc 100644 --- a/nvim/.config/nvim/lua/tobyvin/dap/adapters.lua +++ b/nvim/.config/nvim/lua/tobyvin/dap/adapters.lua @@ -1,5 +1,3 @@ -local dap_utils = require("tobyvin.utils.dap") - local M = { nlua = function(callback, config) callback({ type = "server", host = config.host, port = config.port }) @@ -29,7 +27,7 @@ local M = { }, enrich_config = function(config, on_config) if config["cargo"] ~= nil then - on_config(dap_utils.cargo_inspector(config)) + on_config(U.dap.cargo_inspector(config)) end end, }, diff --git a/nvim/.config/nvim/lua/tobyvin/utils.lua b/nvim/.config/nvim/lua/tobyvin/utils.lua index 61410ce..3d672f9 100644 --- a/nvim/.config/nvim/lua/tobyvin/utils.lua +++ b/nvim/.config/nvim/lua/tobyvin/utils.lua @@ -1,10 +1,24 @@ -local M = {} +local M = { + dashboard = require("tobyvin.utils.dashboard"), + session = require("tobyvin.utils.session"), + dap = require("tobyvin.utils.dap"), +} function M.inspect(v) print(vim.inspect(v)) return v end +function M.lazy_require(modname) + return setmetatable({}, { + __index = function(_, k) + return function(...) + return require(modname)[k](...) + end + end, + }) +end + ---@param ms integer ---@param fn function function M.debounce(ms, fn) diff --git a/nvim/.config/nvim/lua/tobyvin/utils/dashboard.lua b/nvim/.config/nvim/lua/tobyvin/utils/dashboard.lua index e794b95..b978122 100644 --- a/nvim/.config/nvim/lua/tobyvin/utils/dashboard.lua +++ b/nvim/.config/nvim/lua/tobyvin/utils/dashboard.lua @@ -87,6 +87,8 @@ local M = { } function M.render(bufnr, index) + bufnr = bufnr or 0 + local width = vim.api.nvim_win_get_width(0) local height = vim.api.nvim_win_get_height(0) @@ -158,20 +160,24 @@ function M.initialize() return bufnr end +function M.next_fortune(bufnr) + M.render(bufnr, 1) +end + +function M.refresh_stats(bufnr) + M.render(bufnr, 3) +end + function M.setup() local augroup = vim.api.nvim_create_augroup("dashboard", { clear = true }) local bufnr = M.initialize() - vim.keymap.set("n", "<C-n>", function() - M.render(bufnr, 1) - end, { desc = "next cowsay", buffer = bufnr }) - vim.api.nvim_create_autocmd("User", { group = augroup, pattern = { "LazyVimStarted", "LazyLoad", "LazyCheck" }, callback = function() - M.render(bufnr, 3) - end, + M.refresh_stats(bufnr) + end, desc = "dashboard lazy stats", }) |