Skip to content

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

Комментарии игнорирования — для редких случаев, когда правило в целом верное, но его нужно подавить в небольшом, чётко ограниченном фрагменте. Инлайн-комментарии перекрывают конфигурационные файлы.

Поддерживаются однострочные (//) и блочные (/* */) комментарии. Комментарий должен начинаться с одного из ключевых слов ниже.

oxlint-disable

Отключить одно или несколько правил до конца файла или до повторного включения.

js
// Disable all Oxlint rules for the rest of the file
/* oxlint-disable */

// Disable a single rule in this file
/* oxlint-disable no-console */

// Disable multiple rules in this file
/* oxlint-disable no-console, typescript/no-floating-promises */

oxlint-enable

Включить одно или несколько правил до конца файла или до следующего отключения.

js
/* oxlint-enable no-console */

/* oxlint-enable no-console, no-alert */

oxlint-disable-line

Отключить правила только на текущей строке.

js
console.log("Hello, world!"); // oxlint-disable-line no-console

console.log(x++); // oxlint-disable-line no-console, no-plusplus

oxlint-disable-next-line

Отключить правила на следующей строке, далее правила снова активны.

js
// oxlint-disable-next-line no-console
console.log("Hello, world!"); // allowed because of the previous comment
console.log(x++); // not allowed because the previous comment only applied to the previous line

// oxlint-disable-next-line no-console, no-plusplus
console.log("Hello, world!"); // allowed

Совместимость с ESLint

Для уже существующих кодовых баз поддерживаются те же ключевые слова с заменой oxlint на eslint, например /* eslint-disable */ и // eslint-disable-next-line.

Предпочтительна форма oxlint-*. Форма eslint-* удобна при миграции для правил, которые Oxlint ещё не поддерживает.

Опции правил инлайн не меняются

Комментарии могут только включать или выключать правила; опции задаются только в конфиге.

Неиспользуемые комментарии игнорирования

По умолчанию отчёт о неиспользуемых директивах выключен. При включении Oxlint сообщает о комментариях вроде // oxlint-disable-line, если на строке и так не было бы диагностик.

Включить:

bash
oxlint --report-unused-disable-directives

Задать строгость:

bash
oxlint --report-unused-disable-directives-severity error

Одновременно можно использовать только один из этих вариантов.

Также в конфиге Oxlint:

jsonc
{
  "$schema": "./node_modules/oxlint/configuration_schema.json",
  "options": {
    "reportUnusedDisableDirectives": "error", // or "off" or "warn"
  },
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  options: {
    reportUnusedDisableDirectives: "error", // or "off" or "warn"
  },
});