From 3d4b00bb0b76b34485426774eb8f5e42a3aefae8 Mon Sep 17 00:00:00 2001 From: Matthew Leong Date: Fri, 6 Jan 2023 13:14:20 -0800 Subject: [PATCH] feat: buf mapping util clean up --- lua/cosmic/lsp/mappings.lua | 5 ++--- lua/cosmic/lsp/providers/defaults.lua | 4 ++-- lua/cosmic/lsp/utils.lua | 15 --------------- lua/cosmic/plugins/cosmic-ui/init.lua | 12 +++++------- lua/cosmic/plugins/nvim-lsp-ts-utils/init.lua | 6 ++---- lua/cosmic/utils/init.lua | 13 ++++++++++--- 6 files changed, 21 insertions(+), 34 deletions(-) delete mode 100644 lua/cosmic/lsp/utils.lua diff --git a/lua/cosmic/lsp/mappings.lua b/lua/cosmic/lsp/mappings.lua index 94c2a35..0bd264f 100644 --- a/lua/cosmic/lsp/mappings.lua +++ b/lua/cosmic/lsp/mappings.lua @@ -1,10 +1,9 @@ -local u = require('cosmic.utils') +local utils = require('cosmic.utils') local M = {} -- Mappings. function M.init(client, bufnr) - local buf_map = u.create_buf_map({ - buffer = bufnr, + local buf_map = utils.create_buf_map(bufnr, { noremap = false, }) diff --git a/lua/cosmic/lsp/providers/defaults.lua b/lua/cosmic/lsp/providers/defaults.lua index eaf956f..81bb3ab 100644 --- a/lua/cosmic/lsp/providers/defaults.lua +++ b/lua/cosmic/lsp/providers/defaults.lua @@ -14,7 +14,7 @@ function M.on_attach(client, bufnr) if client.supports_method('textDocument/formatting') then -- set up :LspFormat for clients that are capable - vim.cmd(string.format("command! LspFormat lua require('cosmic.lsp.utils').format(%s)", bufnr)) + vim.cmd(string.format("command! LspFormat lua require('cosmic.utils.lsp').format(%s)", bufnr)) if user_config.lsp.format_on_save then -- collect filetype(s) @@ -31,7 +31,7 @@ function M.on_attach(client, bufnr) -- autocommand for format on save with specified filetype(s) vim.api.nvim_create_autocmd(string.format('BufWritePre %s', format_filetypes), { callback = function() - require('cosmic.lsp.utils').format(bufnr) + require('cosmic.utils.lsp').format(bufnr) end, group = group, }) diff --git a/lua/cosmic/lsp/utils.lua b/lua/cosmic/lsp/utils.lua deleted file mode 100644 index 249efcf..0000000 --- a/lua/cosmic/lsp/utils.lua +++ /dev/null @@ -1,15 +0,0 @@ -local user_config = require('cosmic.core.user') -local M = {} - -function M.format(bufnr) - vim.lsp.buf.format({ - timeout_ms = user_config.lsp.format_timeout, - -- check user config to see if we can format on save - filter = function(client) - return user_config.lsp.can_client_format(client) - end, - bufnr = bufnr or 0, - }) -end - -return M diff --git a/lua/cosmic/plugins/cosmic-ui/init.lua b/lua/cosmic/plugins/cosmic-ui/init.lua index 91c66cb..d7f41af 100644 --- a/lua/cosmic/plugins/cosmic-ui/init.lua +++ b/lua/cosmic/plugins/cosmic-ui/init.lua @@ -1,5 +1,5 @@ local user_config = require('cosmic.core.user') -local u = require('cosmic.utils') +local utils = require('cosmic.utils') local defaults = { border_style = 'rounded', @@ -10,20 +10,18 @@ return { dependencies = { 'MunifTanjim/nui.nvim', }, - config = function() - require('cosmic-ui').setup(u.merge(defaults, user_config.plugins.cosmic_ui or {})) - end, init = function() user_config.lsp.add_on_attach_mapping(function(client, bufnr) - local buf_map = u.create_buf_map({ - buffer = bufnr, - }) + local buf_map = utils.create_buf_map(bufnr) buf_map('n', 'gn', 'lua require("cosmic-ui").rename()') buf_map('n', 'ga', 'lua require("cosmic-ui").code_actions()') buf_map('v', 'ga', 'lua require("cosmic-ui").range_code_actions()') end) end, + config = function() + require('cosmic-ui').setup(utils.merge(defaults, user_config.plugins.cosmic_ui or {})) + end, event = 'VeryLazy', enabled = not vim.tbl_contains(user_config.disable_builtin_plugins, 'cosmic-ui'), } diff --git a/lua/cosmic/plugins/nvim-lsp-ts-utils/init.lua b/lua/cosmic/plugins/nvim-lsp-ts-utils/init.lua index c225f4a..e2da76f 100644 --- a/lua/cosmic/plugins/nvim-lsp-ts-utils/init.lua +++ b/lua/cosmic/plugins/nvim-lsp-ts-utils/init.lua @@ -1,14 +1,12 @@ local user_config = require('cosmic.core.user') -local u = require('cosmic.utils') +local utils = require('cosmic.utils') return { 'jose-elias-alvarez/nvim-lsp-ts-utils', init = function() user_config.lsp.add_on_attach_mapping(function(client, bufnr) if client.name == 'tsserver' then - local buf_map = u.create_buf_map({ - buffer = bufnr, - }) + local buf_map = utils.create_buf_map(bufnr) -- typescript helpers buf_map('n', 'gr', ':TSLspRenameFile') buf_map('n', 'go', ':TSLspOrganize') diff --git a/lua/cosmic/utils/init.lua b/lua/cosmic/utils/init.lua index 894acb9..92597c7 100644 --- a/lua/cosmic/utils/init.lua +++ b/lua/cosmic/utils/init.lua @@ -8,9 +8,16 @@ function M.map(mode, lhs, rhs, opts) vim.keymap.set(mode, lhs, rhs, M.merge(defaults, opts or {})) end -function M.create_buf_map(opts) - return function(mode, lhs, rhs) - M.map(mode, lhs, rhs, opts or {}) +function M.create_buf_map(bufnr, opts) + return function(mode, lhs, rhs, map_opts) + M.map( + mode, + lhs, + rhs, + M.merge({ + buffer = bufnr, + }, opts or {}, map_opts or {}) + ) end end