Skip to content

Интерфейс командной строки

Использование

oxlint [-c=<./.oxlintrc.json>] [PATH]...

Базовая конфигурация

  • -c, --config=<./.oxlintrc.json> — файл конфигурации Oxlint
  • Поддерживаются .json и .jsonc во всех средах выполнения

  • JavaScript/TypeScript-конфиги экспериментальны и требуют запуска через Node.js

  • в конфигурационных файлах можно использовать комментарии

  • формат стремится быть совместимым с ESLint v8

    Если не указано, Oxlint ищет .oxlintrc.json, .oxlintrc.jsonc или oxlint.config.ts в текущем рабочем каталоге.

  • --tsconfig=<./tsconfig.json> — переопределить tsconfig для разрешения импортов. Oxlint сам находит подходящий tsconfig.json для каждого файла. Используйте только при нестандартном имени или расположении tsconfig.

    По возможности не используйте эту опцию. Она может расходиться с разрешением импортов и линтингом с типами. Режим с типами не учитывает эту опцию и всегда сам находит нужный tsconfig.json для каждого файла. :::

  • --init — инициализировать конфиг Oxlint значениями по умолчанию

Разрешение / запрет нескольких линтов

Правила и категории накапливаются слева направо в командной строке.

Например -D correctness -A no-debugger или -A all -D no-debugger. Категории:

  • correctness — явно неверный или бесполезный код (по умолчанию)
  • suspicious — код, который с высокой вероятностью неверен или бесполезен
  • pedantic — строгие проверки, иногда с ложными срабатываниями
  • perf — код, который можно написать производительнее
  • style — более идиоматичный стиль
  • restriction — запрет отдельных возможностей языка и библиотек
  • nursery — новые правила в разработке
  • all — все перечисленные, кроме nursery. Плагины автоматически не подключает.

Аргументы:

  • -A, --allow=NAME — разрешить правило или категорию (подавить линт)
  • -W, --warn=NAME — трактовать как предупреждение
  • -D, --deny=NAME — трактовать как ошибку

Включение / отключение плагинов

  • --disable-unicorn-plugin — отключить плагин unicorn (включён по умолчанию)
  • --disable-oxc-plugin — отключить уникальные правила oxc (включены по умолчанию)
  • --disable-typescript-plugin — отключить плагин TypeScript (включён по умолчанию)
  • --import-plugin — включить плагин import и проверки ESM
  • --react-plugin — включить плагин react (по умолчанию выключен)
  • --jsdoc-plugin — включить плагин jsdoc и проверки JSDoc
  • --jest-plugin — включить плагин Jest
  • --vitest-plugin — включить плагин Vitest
  • --jsx-a11y-plugin — включить JSX-a11y и проверки доступности
  • --nextjs-plugin — включить плагин Next.js
  • --react-perf-plugin — включить плагин производительности React
  • --promise-plugin — включить плагин promise
  • --node-plugin — включить плагин node
  • --vue-plugin — включить плагин vue

Исправление проблем

  • --fix — исправить сколько возможно. В выводе остаются только неисправленные проблемы.
  • --fix-suggestions — применить автоисправляемые предложения. Могут изменить поведение программы.
  • --fix-dangerously — применить опасные исправления и предложения

Игнорирование файлов

  • --ignore-path=PATH — файл в роли .eslintignore

  • --ignore-pattern=PAT — шаблоны игнорируемых файлов (дополнительно к .eslintignore)

    Синтаксис как у .eslintignore и .gitignore. Заключайте шаблоны в кавычки, чтобы shell не раскрывал glob.

  • --no-ignore — не исключать файлы по .eslintignore, --ignore-path и --ignore-pattern

Работа с предупреждениями

  • --quiet — не показывать предупреждения, только ошибки
  • --deny-warnings — ненулевой код выхода при наличии предупреждений
  • --max-warnings=INT — порог числа предупреждений; при превышении — ошибка

Вывод

  • -f, --format=ARG — формат вывода: checkstyle, default, github, gitlab, json, junit, stylish, unix

Прочее

  • --silent — не показывать диагностики
  • --no-error-on-unmatched-pattern — не завершаться с ошибкой, если после игноров не выбрано ни одного файла
  • --threads=INT — число потоков. 1 — одно ядро CPU.
  • --print-config — вывести конфигурацию для файла; линтинг не выполняется, допустимы только опции, связанные с конфигом.

Инлайн-комментарии в коде

  • --report-unused-disable-directives — сообщать о директивах вроде // oxlint-disable-line, если на строке и так не было бы ошибок
  • --report-unused-disable-directives-severity=SEVERITY — то же, с явной строгостью. Одновременно с предыдущей опцией не используется.

Позиционные аргументы:

  • PATH — один файл, каталог или список путей

Опции:

  • --rules — вывести все зарегистрированные правила
  • --lsp — запустить языковой сервер
  • --disable-nested-config — не подгружать вложенные конфиги автоматически
  • --type-aware — включить правила, требующие информации о типах
  • --type-check — включить экспериментальную проверку типов (диагностики компилятора TypeScript)
  • -h, --help — справка
  • -V, --version — версия