local progress_handle return { "wojciech-kulik/xcodebuild.nvim", event = "VeryLazy", --branch = "fix/issue-249", dependencies = { "nvim-telescope/telescope.nvim", "MunifTanjim/nui.nvim", }, config = function() require("xcodebuild").setup({ show_build_progress_bar = false, logs = { auto_open_on_success_tests = false, auto_open_on_failed_tests = false, auto_open_on_success_build = false, auto_open_on_failed_build = false, auto_focus = false, auto_close_on_app_launch = true, only_summary = true, notify = function(message, severity) local fidget = require("fidget") if progress_handle then progress_handle.message = message if not message:find("Loading") then progress_handle:finish() progress_handle = nil if vim.trim(message) ~= "" then fidget.notify(message, severity) end end else fidget.notify(message, severity) end end, notify_progress = function(message) local progress = require("fidget.progress") if progress_handle then progress_handle.title = "" progress_handle.message = message else progress_handle = progress.handle.create({ message = message, lsp_client = { name = "xcodebuild.nvim" }, }) end end, }, code_coverage = { enabled = true, }, }) -- stylua: ignore start 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 This Test Class" }) 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, }