diff --git a/nvim/m-housh/lua/user/plugin/xcodebuild.lua b/nvim/m-housh/lua/user/plugin/xcodebuild.lua new file mode 100644 index 0000000..ab3de1d --- /dev/null +++ b/nvim/m-housh/lua/user/plugin/xcodebuild.lua @@ -0,0 +1,43 @@ +return { + "wojciech-kulik/xcodebuild.nvim", + dependencies = { + "nvim-telescope/telescope.nvim", + "MunifTanjim/nui.nvim", + "nvim-neo-tree/neo-tree.nvim", -- (optional) to manage project files + "stevearc/oil.nvim", -- (optional) to manage project files + "nvim-treesitter/nvim-treesitter", -- (optional) for Quick tests support (required Swift parser) + }, + config = function() + require("xcodebuild").setup({ + -- put some options here or leave it empty to use default settings + code_coverage = { + enabled = true + } + }) + + vim.keymap.set("n", "X", "XcodebuildPicker", { desc = "Show Xcodebuild Actions" }) + vim.keymap.set("n", "xf", "XcodebuildProjectManager", { desc = "Show Project Manager Actions" }) + + vim.keymap.set("n", "xb", "XcodebuildBuild", { desc = "Build Project" }) + vim.keymap.set("n", "xB", "XcodebuildBuildForTesting", { desc = "Build For Testing" }) + vim.keymap.set("n", "xr", "XcodebuildBuildRun", { desc = "Build & Run Project" }) + + vim.keymap.set("n", "xt", "XcodebuildTest", { desc = "Run Tests" }) + vim.keymap.set("v", "xt", "XcodebuildTestSelected", { desc = "Run Selected Tests" }) + vim.keymap.set("n", "xT", "XcodebuildTestClass", { desc = "Run Current Test Class" }) + vim.keymap.set("n", "x.", "XcodebuildTestRepeat", { desc = "Repeat Last Test Run" }) + + vim.keymap.set("n", "xl", "XcodebuildToggleLogs", { desc = "Toggle Xcodebuild Logs" }) + vim.keymap.set("n", "xc", "XcodebuildToggleCodeCoverage", { desc = "Toggle Code Coverage" }) + vim.keymap.set("n", "xC", "XcodebuildShowCodeCoverageReport", { desc = "Show Code Coverage Report" }) + vim.keymap.set("n", "xe", "XcodebuildTestExplorerToggle", { desc = "Toggle Test Explorer" }) + vim.keymap.set("n", "xs", "XcodebuildFailingSnapshots", { desc = "Show Failing Snapshots" }) + + vim.keymap.set("n", "xd", "XcodebuildSelectDevice", { desc = "Select Device" }) + vim.keymap.set("n", "xp", "XcodebuildSelectTestPlan", { desc = "Select Test Plan" }) + vim.keymap.set("n", "xq", "Telescope quickfix", { desc = "Show QuickFix List" }) + + vim.keymap.set("n", "xx", "XcodebuildQuickfixLine", { desc = "Quickfix Line" }) + vim.keymap.set("n", "xa", "XcodebuildCodeActions", { desc = "Show Code Actions" }) + end, +} diff --git a/nvim/m-housh/lua/user/plugins.lua b/nvim/m-housh/lua/user/plugins.lua index c4be5c4..b0b50e9 100755 --- a/nvim/m-housh/lua/user/plugins.lua +++ b/nvim/m-housh/lua/user/plugins.lua @@ -63,8 +63,8 @@ require("lazy").setup({ -- LSP, formatting, etc. -- { 'folke/neodev.nvim', opts = {} }, - { import = 'user.plugin.xcodebuild' }, { import = 'user.plugin.lsp' }, + { import = 'user.plugin.xcodebuild' }, { import = 'user.plugin.lualine' }, { import = 'user.plugin.treesitter' }, { import = 'user.plugin.formatter' },