Oxc extension for coc.nvim
:CocInstall coc-oxc
- oxlint: Fast linter with auto-fix support
- oxfmt: Fast formatter with format-on-save support
Note: This plugin only uses oxlint and oxfmt installed in the respective project; it does not activate globally.
oxc.oxlint.enable: Enable oxlint language server (default:true)oxc.oxlint.run: Run the linter on saveonSaveor on typeonType(default:onType)oxc.oxlint.configPath: Path to oxlint configuration (default:null, searches for.oxlintrc.json)oxc.oxlint.binPath: Path to theoxlintbinary (default: searches innode_modules/.bin)oxc.oxlint.codeActionsOnSave: Code action kinds to apply on save, e.g.["source.fixAll.oxc"](default:[], disabled)
oxc.oxfmt.enable: Enable oxfmt formatting (default:true)oxc.oxfmt.binPath: Path to theoxfmtbinary (default: searches innode_modules/.bin)oxc.oxfmt.formatterPriority: Priority used when multiple formatters are registered for a language. Only positive values boost; the default1outranks formatters that do not set a priority. To defer for a given language, usecoc.preferences.formatterExtensioninstead (default:1)
To enable format on save, add this to your coc-config (:CocConfig):
{
"oxc.oxfmt.enable": true,
"coc.preferences.formatterExtension": "coc-oxc"
}coc.preferences.formatterExtension tells coc.nvim to use coc-oxc whenever it is available, which avoids conflicts with other extensions that also register an LSP formatter (e.g. coc-biome, coc-tsserver, coc-prettier). You can scope it per-language if you want a different formatter for some files:
{
"[json]": { "coc.preferences.formatterExtension": "coc-prettier" }
}oxfmt also registers itself with oxc.oxfmt.formatterPriority 1 by default, which outranks any extension that does not set a priority.
You can also format manually with :call CocAction('format')
To apply oxlint's auto-fixes on save, add this to your coc-config (:CocConfig):
{
"oxc.oxlint.codeActionsOnSave": ["source.fixAll.oxc"]
}oxlint.restartServer: Restart oxlint Serveroxlint.showOutputChannel: Show oxlint Output Channel
oxfmt.restartServer: Restart oxfmt Serveroxfmt.showOutputChannel: Show oxfmt Output Channel
MIT
This extension is built with create-coc-extension