-
-
Notifications
You must be signed in to change notification settings - Fork 19
Home
Below is a list of all dependencies. However, you don't have to install all of them in this step.
Neovim environment
- Neovim 0.9.5+
- telescope.nvim to present pickers.
- nui.nvim to present floating code coverage report.
- nvim-tree, neo-tree, or oil.nvim to visually manage your project files.
- nvim-dap and nvim-dap-ui to debug apps.
- nvim-treesitter + Swift parser to show test results for tests written using Quick framework.
External tools
- xcbeautify to format Xcode logs (you can set a different tool or disable formatting in the config).
- Xcodeproj to manage project files within Neovim.
- Ruby to use Xcodeproj gem.
- pymobiledevice3 to debug on physical devices and/or run apps on devices below iOS 17.
- xcode-build-server to make LSP work properly with xcodeproj/xcworkspace.
- codelldb to debug applications.
- ripgrep to find matching test files when using Swift Testing framework.
-
Xcode to build, run, and test apps. Make sure that
xcodebuild
andxcrun simctl
work correctly. Tested with Xcode 15 & 16.
return {
"wojciech-kulik/xcodebuild.nvim",
dependencies = {
"nvim-telescope/telescope.nvim",
"MunifTanjim/nui.nvim",
"nvim-tree/nvim-tree.lua", -- (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
})
end,
}
Below setup
you can add some bindings. Check out suggested key bindings.
brew install xcode-build-server xcbeautify ruby pipx rg
gem install xcodeproj
pipx install pymobiledevice3
To quickly install all required tools you can run:
cd ~/.local/share/nvim/lazy/xcodebuild.nvim
make install
Follow the guide: Neovim Configuration.
Check out available integrations and pick which one you want to use.
Optionally, you can apply this workaround to improve build time.
Make sure to start Neovim in your project's root directory and run XcodebuildSetup
to configure it.
The plugin needs several information like project file, scheme, config, device, and test plan to
run commands.
Once the project is configured you can run :XcodebuildPicker
to see all available actions.
Remember, that all the information are available in the help :h xcodebuild
.
Every function is documented and described both in the help and in the code.
API: If you want to use functions directly instead of user commands, then please see xcodebuild.actions module.
Useful Help Tags
:h xcodebuild
:h xcodebuild.config
:h xcodebuild.keys
:h xcodebuild.tools
:h xcodebuild.commands
:h xcodebuild.events
:h xcodebuild.highlights
:h xcodebuild.dap