Skip to main content
Back to Extensions Directory
coc.nvim fallback icon

coc-oxc

oxc

Oxc extension for coc.nvim

Installation CommandVim prompt
:CocInstall coc-oxc
GitHub owner
oxc
Version
v0.3.0
npm package
coc-oxc
Requirements
coc ^0.0.82
License
MIT
Repository
GitHub
npm latest published 2026-05-16Registry checked 2026-08-23Registry summary

Published Package Summary

coc-oxc

Oxc extension for coc.nvim

Install

:CocInstall coc-oxc

Features

  • 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.

Configurations

Oxlint (Linter)

  • oxc.oxlint.enable: Enable oxlint language server (default: true)
  • oxc.oxlint.run: Run the linter on save onSave or on type onType (default: onType)
  • oxc.oxlint.configPath: Path to oxlint configuration (default: null, searches for .oxlintrc.json)
  • oxc.oxlint.binPath: Path to the oxlint binary (default: searches in node_modules/.bin)
  • oxc.oxlint.codeActionsOnSave: Code action kinds to apply on save, e.g. ["source.fixAll.oxc"] (default: [], disabled)

Oxfmt (Formatter)

  • oxc.oxfmt.enable: Enable oxfmt formatting (default: true)
  • oxc.oxfmt.binPath: Path to the oxfmt binary (default: searches in node_modules/.bin)
  • oxc.oxfmt.formatterPriority: Priority used when multiple formatters are registered for a language. Only positive values boost; the default 1 outranks formatters that do not set a priority. To defer for a given language, use coc.preferences.formatterExtension instead (default: 1)

Format on Save

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')

Fix on Save

To apply oxlint's auto-fixes on save, add this to your coc-config (:CocConfig):

{
  "oxc.oxlint.codeActionsOnSave": ["source.fixAll.oxc"]
}

License

MIT


This extension is built with create-coc-extension

Read the complete README
  • Oxc extension for coc.nvim
Activation Events
  • onLanguage:css
  • onLanguage:graphql
  • onLanguage:handlebars
  • onLanguage:html
  • onLanguage:javascript
  • onLanguage:javascriptreact
  • onLanguage:json
  • onLanguage:json5
  • onLanguage:jsonc
  • onLanguage:less
  • onLanguage:markdown
  • onLanguage:scss
  • onLanguage:svelte
  • onLanguage:typescript
  • onLanguage:typescriptreact
  • onLanguage:vue
  • onLanguage:yaml
Developer Resources

Want to build, test, or contribute to coc.nvim extensions? Explore our official SDK and testing toolkits.

Open Developer Guide

Version History

This published npm package does not include a history.md or changelog.md file. Browse its npm versions or repository releases for available release information.