Параметры конфигурации Oxfmt.
Большинство опций совпадают с опциями Prettier, но не все. Часть опций — наши расширения.
arrowParens
type: "always" | "avoid"
Оборачивать в скобки единственный параметр стрелочной функции.
- По умолчанию:
"always"
bracketSameLine
type: boolean
Размещать символ > многострочного HTML-элемента (HTML, JSX, Vue, Angular) в конце последней строки, а не на отдельной следующей строке (не применяется к самозакрывающимся элементам).
- По умолчанию:
false
bracketSpacing
type: boolean
Печатать пробелы между скобками в объектных литералах.
- По умолчанию:
true
embeddedLanguageFormatting
type: "auto" | "off"
Управляет форматированием встроенных фрагментов (например CSS-in-JS, JS-in-Vue и т.д.) в файле.
ПРИМЕЧАНИЕ: поддержка XXX-in-JS неполная.
- По умолчанию:
"auto"
endOfLine
type: "lf" | "crlf" | "cr"
Какие символы конца строки применять.
ПРИМЕЧАНИЕ: значение "auto" не поддерживается.
- По умолчанию:
"lf" - Переопределяет
.editorconfig.end_of_line
htmlWhitespaceSensitivity
type: "css" | "strict" | "ignore"
Глобальная чувствительность к пробельным символам для HTML, Vue, Angular и Handlebars.
- По умолчанию:
"css"
ignorePatterns
type: string[]
Игнорировать файлы, соответствующие этим glob-шаблонам. Шаблоны считаются относительно расположения файла конфигурации Oxfmt.
- По умолчанию:
[]
insertFinalNewline
type: boolean
Вставлять ли финальный перевод строки в конце файла.
- По умолчанию:
true - Переопределяет
.editorconfig.insert_final_newline
jsdoc
type: object | boolean
Включить форматирование комментариев JSDoc.
При включении комментарии JSDoc нормализуются и переформатируются: алиасы тегов приводятся к каноническому виду, описания с заглавной буквы, длинные строки переносятся, короткие комментарии сжимаются в одну строку.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
jsdoc.addDefaultToDescription
type: boolean
Добавлять значения по умолчанию к описаниям @param (напр. «По умолчанию value»).
- По умолчанию:
true
jsdoc.bracketSpacing
type: boolean
Добавлять пробелы внутри фигурных скобок типов JSDoc: {string} → { string }.
- По умолчанию:
false
jsdoc.capitalizeDescriptions
type: boolean
Делать заглавной первую букву описаний тегов.
- По умолчанию:
true
jsdoc.commentLineStrategy
type: string
Как форматировать блоки комментариев.
"singleLine"— по возможности преобразовать в однострочный/** content */."multiline"— всегда многострочный формат."keep"— сохранить исходное форматирование.По умолчанию:
"singleLine"
jsdoc.descriptionTag
type: boolean
Выводить тег @description вместо встроенного описания.
- По умолчанию:
false
jsdoc.descriptionWithDot
type: boolean
Добавлять точку в конце описаний.
- По умолчанию:
false
jsdoc.keepUnparsableExampleIndent
type: boolean
Сохранять отступы в неразбираемом коде @example.
- По умолчанию:
false
jsdoc.lineWrappingStyle
type: string
Стратегия переноса строк описания по ширине печати.
"greedy"— всегда переносить текст, чтобы уместиться в ширину печати."balance"— сохранять исходные разрывы строк, если все строки помещаются в ширину печати.По умолчанию:
"greedy"
jsdoc.preferCodeFences
type: boolean
Использовать ограждённые блоки кода (```) вместо отступа в 4 пробела для кода без указания языка.
- По умолчанию:
false
jsdoc.separateReturnsFromParam
type: boolean
Добавлять пустую строку между последним @param и @returns.
- По умолчанию:
false
jsdoc.separateTagGroups
type: boolean
Добавлять пустые строки между разными группами тегов (напр. между @param и @returns).
- По умолчанию:
false
jsxSingleQuote
type: boolean
Использовать одинарные кавычки в JSX вместо двойных.
- По умолчанию:
false
objectWrap
type: "preserve" | "collapse"
Как переносить объектные литералы, когда они могут поместиться в одну строку или занять несколько.
По умолчанию объекты форматируются как многострочные, если перед первым свойством уже есть перевод строки. Эвристика помогает читаемости, но имеет недостатки.
- По умолчанию:
"preserve"
overrides
type: array
Переопределения для отдельных файлов. Если файл подходит под несколько переопределений, применяется последнее (важен порядок в массиве).
- По умолчанию:
[]
overrides[n]
type: object
overrides[n].excludeFiles
type: string[]
Glob-шаблоны исключения из этого переопределения.
overrides[n].files
type: string[]
Glob-шаблоны файлов для этого переопределения. Все шаблоны считаются относительно файла конфигурации Oxfmt.
overrides[n].options
type: object
overrides[n].options.arrowParens
type: "always" | "avoid"
Оборачивать в скобки единственный параметр стрелочной функции.
- По умолчанию:
"always"
overrides[n].options.bracketSameLine
type: boolean
Размещать символ > многострочного HTML-элемента (HTML, JSX, Vue, Angular) в конце последней строки, а не на отдельной следующей строке (не применяется к самозакрывающимся элементам).
- По умолчанию:
false
overrides[n].options.bracketSpacing
type: boolean
Печатать пробелы между скобками в объектных литералах.
- По умолчанию:
true
overrides[n].options.embeddedLanguageFormatting
type: "auto" | "off"
Управляет форматированием встроенных фрагментов (например CSS-in-JS, JS-in-Vue и т.д.) в файле.
ПРИМЕЧАНИЕ: поддержка XXX-in-JS неполная.
- По умолчанию:
"auto"
overrides[n].options.endOfLine
type: "lf" | "crlf" | "cr"
Какие символы конца строки применять.
ПРИМЕЧАНИЕ: значение "auto" не поддерживается.
- По умолчанию:
"lf" - Переопределяет
.editorconfig.end_of_line
overrides[n].options.htmlWhitespaceSensitivity
type: "css" | "strict" | "ignore"
Глобальная чувствительность к пробельным символам для HTML, Vue, Angular и Handlebars.
- По умолчанию:
"css"
overrides[n].options.insertFinalNewline
type: boolean
Вставлять ли финальный перевод строки в конце файла.
- По умолчанию:
true - Переопределяет
.editorconfig.insert_final_newline
overrides[n].options.jsdoc
type: object | boolean
Включить форматирование комментариев JSDoc.
При включении комментарии JSDoc нормализуются и переформатируются: алиасы тегов приводятся к каноническому виду, описания с заглавной буквы, длинные строки переносятся, короткие комментарии сжимаются в одну строку.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
overrides[n].options.jsdoc.addDefaultToDescription
type: boolean
Добавлять значения по умолчанию к описаниям @param (напр. «По умолчанию value»).
- По умолчанию:
true
overrides[n].options.jsdoc.bracketSpacing
type: boolean
Добавлять пробелы внутри фигурных скобок типов JSDoc: {string} → { string }.
- По умолчанию:
false
overrides[n].options.jsdoc.capitalizeDescriptions
type: boolean
Делать заглавной первую букву описаний тегов.
- По умолчанию:
true
overrides[n].options.jsdoc.commentLineStrategy
type: string
Как форматировать блоки комментариев.
"singleLine"— по возможности преобразовать в однострочный/** content */."multiline"— всегда многострочный формат."keep"— сохранить исходное форматирование.По умолчанию:
"singleLine"
overrides[n].options.jsdoc.descriptionTag
type: boolean
Выводить тег @description вместо встроенного описания.
- По умолчанию:
false
overrides[n].options.jsdoc.descriptionWithDot
type: boolean
Добавлять точку в конце описаний.
- По умолчанию:
false
overrides[n].options.jsdoc.keepUnparsableExampleIndent
type: boolean
Сохранять отступы в неразбираемом коде @example.
- По умолчанию:
false
overrides[n].options.jsdoc.lineWrappingStyle
type: string
Стратегия переноса строк описания по ширине печати.
"greedy"— всегда переносить текст, чтобы уместиться в ширину печати."balance"— сохранять исходные разрывы строк, если все строки помещаются в ширину печати.По умолчанию:
"greedy"
overrides[n].options.jsdoc.preferCodeFences
type: boolean
Использовать ограждённые блоки кода (```) вместо отступа в 4 пробела для кода без указания языка.
- По умолчанию:
false
overrides[n].options.jsdoc.separateReturnsFromParam
type: boolean
Добавлять пустую строку между последним @param и @returns.
- По умолчанию:
false
overrides[n].options.jsdoc.separateTagGroups
type: boolean
Добавлять пустые строки между разными группами тегов (напр. между @param и @returns).
- По умолчанию:
false
overrides[n].options.jsxSingleQuote
type: boolean
Использовать одинарные кавычки в JSX вместо двойных.
- По умолчанию:
false
overrides[n].options.objectWrap
type: "preserve" | "collapse"
Как переносить объектные литералы, когда они могут поместиться в одну строку или занять несколько.
По умолчанию объекты форматируются как многострочные, если перед первым свойством уже есть перевод строки. Эвристика помогает читаемости, но имеет недостатки.
- По умолчанию:
"preserve"
overrides[n].options.printWidth
type: integer
Максимальная длина строки, при которой принтер выполняет перенос.
Чтобы отключить перенос при форматировании Markdown, задайте опцию proseWrap.
- По умолчанию:
100 - Переопределяет
.editorconfig.max_line_length
overrides[n].options.proseWrap
type: "always" | "never" | "preserve"
Как переносить обычный текст (прозу).
По умолчанию форматтер не меняет переносы в Markdown: некоторые сервисы чувствительны к переводу строки (комментарии GitHub, Bitbucket и т.д.). Чтобы переносить прозу по ширине печати, установите "always". Чтобы принудительно держать блоки прозы в одну строку и полагаться на мягкий перенос в редакторе/просмотрщике, используйте "never".
- По умолчанию:
"preserve"
overrides[n].options.quoteProps
type: "as-needed" | "consistent" | "preserve"
Когда заключать свойства объектов в кавычки.
- По умолчанию:
"as-needed"
overrides[n].options.semi
type: boolean
Печатать точку с запятой в конце операторов.
- По умолчанию:
true
overrides[n].options.singleAttributePerLine
type: boolean
Требовать один атрибут на строку в HTML, Vue и JSX.
- По умолчанию:
false
overrides[n].options.singleQuote
type: boolean
Использовать одинарные кавычки вместо двойных.
Для JSX можно задать опцию jsxSingleQuote.
- По умолчанию:
false - Переопределяет
.editorconfig.quote_type
overrides[n].options.sortImports
type: object | boolean
Сортировать операторы импорта.
Используется алгоритм, близкий к eslint-plugin-perfectionist/sort-imports. Подробности см. в описании каждого поля.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
overrides[n].options.sortImports.customGroups
type: array
Задаёт собственные группы для очень специфичных импортов.
Список customGroups упорядочен: используется первое совпадение с элементом. Пользовательские группы имеют приоритет над предопределёнными.
Чтобы предопределённая группа имела приоритет над пользовательской, нужно описать пользовательскую группу с тем же поведением и поставить её первой в списке.
Если указано несколько условий (elementNamePattern, selector, modifiers), все они должны выполняться для попадания импорта в пользовательскую группу (логика И).
- По умолчанию:
[]
####### overrides[n].options.sortImports.customGroups[n]
type: object
######## overrides[n].options.sortImports.customGroups[n].elementNamePattern
type: string[]
по умолчанию: []
Список glob-шаблонов для сопоставления источников импорта с этой группой.
######## overrides[n].options.sortImports.customGroups[n].groupName
type: string
по умолчанию: ""
Имя пользовательской группы, используется в опции groups.
######## overrides[n].options.sortImports.customGroups[n].modifiers
type: string[]
Модификаторы для сопоставления с характеристиками импорта. Должны присутствовать все указанные модификаторы (логика И).
Возможные значения: "side_effect", "type", "value", "default", "wildcard", "named"
######## overrides[n].options.sortImports.customGroups[n].selector
type: string
Селектор вида импорта.
Возможные значения: "type", "side_effect_style", "side_effect", "style", "index", "sibling", "parent", "subpath", "internal", "builtin", "external", "import"
overrides[n].options.sortImports.groups
type: array
Список предопределённых групп импорта для сортировки.
Каждому импорту назначается одна группа из опции groups (или группа unknown, если совпадений нет). Порядок элементов в groups задаёт порядок групп.
Внутри группы элементы сортируются с учётом опций type, order, ignoreCase и др.
Несколько групп можно объединить, поместив их в массив. Порядок групп в этом массиве не важен. Все элементы объединённых групп сортируются как одна группа.
Предопределённые группы задаются одним селектором и, возможно, несколькими модификаторами. Модификаторы можно перечислять в любом порядке, но селектор всегда должен быть последним.
Список селекторов от более важного к менее важному:
type— импорты типов TypeScript.side_effect_style— импорты стилей с побочным эффектом.side_effect— импорты с побочным эффектом.style— импорты стилей.index— главный файл текущего каталога.sibling— модули из того же каталога.parent— модули из родительского каталога.subpath— подпути импорта Node.js.internal— ваши внутренние модули.builtin— встроенные модули Node.js.external— внешние модули, установленные в проекте.import— любой импорт.
Список модификаторов от более важного к менее важному:
side_effect— импорты с побочным эффектом.type— импорты типов TypeScript.value— импорты значений.default— импорты с default-спецификатором.wildcard— импорты со спецификатором вида* as.named— импорты с хотя бы одним именованным спецификатором.По умолчанию: см. ниже
["builtin", "external", ["internal", "subpath"], ["parent", "sibling", "index"], "style", "unknown"]Также можно переопределить глобальную настройку newlinesBetween для конкретных границ групп, включив в список groups объект-маркер { "newlinesBetween": boolean } в нужной позиции.
####### overrides[n].options.sortImports.groups[n]
type: object | array | string
######## overrides[n].options.sortImports.groups[n].newlinesBetween
type: boolean
overrides[n].options.sortImports.ignoreCase
type: boolean
Учитывать ли регистр при сортировке.
- По умолчанию:
true
overrides[n].options.sortImports.internalPattern
type: string[]
Префиксы для распознавания внутренних импортов.
Полезно отличать ваши модули от внешних зависимостей.
- По умолчанию:
["~/", "@/"]
overrides[n].options.sortImports.newlinesBetween
type: boolean
Добавлять ли пустые строки между группами.
При false между группами не добавляются переносы.
- По умолчанию:
true
overrides[n].options.sortImports.order
type: "asc" | "desc"
Порядок сортировки: по возрастанию или убыванию.
- По умолчанию:
"asc"
overrides[n].options.sortImports.partitionByComment
type: boolean
Разрешить использовать комментарии для разделения импортов на логические группы.
При true все комментарии считаются разделителями и создают разделы.
import { b1, b2 } from "b";
// PARTITION
import { a } from "a";
import { c } from "c";- По умолчанию:
false
overrides[n].options.sortImports.partitionByNewline
type: boolean
Разрешить использовать пустую строку для разделения импортов на логические группы.
При true форматтер не сортирует импорты, если между ними есть пустая строка. Это помогает сохранять заданный порядок логически разделённых групп.
import { b1, b2 } from "b";
import { a } from "a";
import { c } from "c";- По умолчанию:
false
overrides[n].options.sortImports.sortSideEffects
type: boolean
Сортировать ли импорты с побочным эффектом.
По умолчанию сортировка таких импортов отключена из соображений безопасности.
- По умолчанию:
false
overrides[n].options.sortPackageJson
type: object | boolean
Сортировать ключи в package.json.
Алгоритм НЕ совместим с prettier-plugin-sort-packagejson. Мы считаем его понятнее и удобнее для навигации. Подробности см. в описании полей.
- По умолчанию:
true
overrides[n].options.sortPackageJson.sortScripts
type: boolean
Сортировать поле scripts по алфавиту.
- По умолчанию:
false
overrides[n].options.sortTailwindcss
type: object | boolean
Сортировать классы Tailwind CSS.
Тот же алгоритм, что у prettier-plugin-tailwindcss. Имена опций без префикса tailwind, как в исходном плагине (например config вместо tailwindConfig). Подробности см. в описании полей.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
overrides[n].options.sortTailwindcss.attributes
type: string[]
Дополнительные атрибуты для сортировки помимо class и className (точное совпадение).
ПРИМЕЧАНИЕ: шаблоны regex пока не поддерживаются.
- По умолчанию:
[] - Пример:
["myClassProp", ":class"]
overrides[n].options.sortTailwindcss.config
type: string
Путь к файлу конфигурации Tailwind CSS (v3).
ПРИМЕЧАНИЕ: пути считаются относительно файла конфигурации Oxfmt.
- По умолчанию: автоматический поиск
"tailwind.config.js"
overrides[n].options.sortTailwindcss.functions
type: string[]
Имена пользовательских функций, аргументы которых нужно сортировать (точное совпадение).
ПРИМЕЧАНИЕ: шаблоны regex пока не поддерживаются.
- По умолчанию:
[] - Пример:
["clsx", "cn", "cva", "tw"]
overrides[n].options.sortTailwindcss.preserveDuplicates
type: boolean
Сохранять дубликаты классов.
- По умолчанию:
false
overrides[n].options.sortTailwindcss.preserveWhitespace
type: boolean
Сохранять пробелы вокруг классов.
- По умолчанию:
false
overrides[n].options.sortTailwindcss.stylesheet
type: string
Путь к таблице стилей Tailwind CSS (v4).
ПРИМЕЧАНИЕ: пути считаются относительно файла конфигурации Oxfmt.
- По умолчанию:
theme.cssустановленного Tailwind CSS
overrides[n].options.tabWidth
type: integer
Число пробелов на уровень отступа.
- По умолчанию:
2 - Переопределяет
.editorconfig.indent_size(с запасным.editorconfig.tab_width)
overrides[n].options.trailingComma
type: "all" | "es5" | "none"
Печатать висячие запятые там, где это возможно в многострочных конструкциях со списками через запятую.
Однострочный массив, например, никогда не получает висячих запятых.
- По умолчанию:
"all"
overrides[n].options.useTabs
type: boolean
Отступать табами вместо пробелов.
- По умолчанию:
false - Переопределяет
.editorconfig.indent_style
overrides[n].options.vueIndentScriptAndStyle
type: boolean
Добавлять ли отступ коду внутри тегов <script> и <style> во Vue-файлах.
- По умолчанию:
false
printWidth
type: integer
Максимальная длина строки, при которой принтер выполняет перенос.
Чтобы отключить перенос при форматировании Markdown, задайте опцию proseWrap.
- По умолчанию:
100 - Переопределяет
.editorconfig.max_line_length
proseWrap
type: "always" | "never" | "preserve"
Как переносить обычный текст (прозу).
По умолчанию форматтер не меняет переносы в Markdown: некоторые сервисы чувствительны к переводу строки (комментарии GitHub, Bitbucket и т.д.). Чтобы переносить прозу по ширине печати, установите "always". Чтобы принудительно держать блоки прозы в одну строку и полагаться на мягкий перенос в редакторе/просмотрщике, используйте "never".
- По умолчанию:
"preserve"
quoteProps
type: "as-needed" | "consistent" | "preserve"
Когда заключать свойства объектов в кавычки.
- По умолчанию:
"as-needed"
semi
type: boolean
Печатать точку с запятой в конце операторов.
- По умолчанию:
true
singleAttributePerLine
type: boolean
Требовать один атрибут на строку в HTML, Vue и JSX.
- По умолчанию:
false
singleQuote
type: boolean
Использовать одинарные кавычки вместо двойных.
Для JSX можно задать опцию jsxSingleQuote.
- По умолчанию:
false - Переопределяет
.editorconfig.quote_type
sortImports
type: object | boolean
Сортировать операторы импорта.
Используется алгоритм, близкий к eslint-plugin-perfectionist/sort-imports. Подробности см. в описании каждого поля.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
sortImports.customGroups
type: array
Задаёт собственные группы для очень специфичных импортов.
Список customGroups упорядочен: используется первое совпадение с элементом. Пользовательские группы имеют приоритет над предопределёнными.
Чтобы предопределённая группа имела приоритет над пользовательской, нужно описать пользовательскую группу с тем же поведением и поставить её первой в списке.
Если указано несколько условий (elementNamePattern, selector, modifiers), все они должны выполняться для попадания импорта в пользовательскую группу (логика И).
- По умолчанию:
[]
sortImports.customGroups[n]
type: object
sortImports.customGroups[n].elementNamePattern
type: string[]
по умолчанию: []
Список glob-шаблонов для сопоставления источников импорта с этой группой.
sortImports.customGroups[n].groupName
type: string
по умолчанию: ""
Имя пользовательской группы, используется в опции groups.
sortImports.customGroups[n].modifiers
type: string[]
Модификаторы для сопоставления с характеристиками импорта. Должны присутствовать все указанные модификаторы (логика И).
Возможные значения: "side_effect", "type", "value", "default", "wildcard", "named"
sortImports.customGroups[n].selector
type: string
Селектор вида импорта.
Возможные значения: "type", "side_effect_style", "side_effect", "style", "index", "sibling", "parent", "subpath", "internal", "builtin", "external", "import"
sortImports.groups
type: array
Список предопределённых групп импорта для сортировки.
Каждому импорту назначается одна группа из опции groups (или группа unknown, если совпадений нет). Порядок элементов в groups задаёт порядок групп.
Внутри группы элементы сортируются с учётом опций type, order, ignoreCase и др.
Несколько групп можно объединить, поместив их в массив. Порядок групп в этом массиве не важен. Все элементы объединённых групп сортируются как одна группа.
Предопределённые группы задаются одним селектором и, возможно, несколькими модификаторами. Модификаторы можно перечислять в любом порядке, но селектор всегда должен быть последним.
Список селекторов от более важного к менее важному:
type— импорты типов TypeScript.side_effect_style— импорты стилей с побочным эффектом.side_effect— импорты с побочным эффектом.style— импорты стилей.index— главный файл текущего каталога.sibling— модули из того же каталога.parent— модули из родительского каталога.subpath— подпути импорта Node.js.internal— ваши внутренние модули.builtin— встроенные модули Node.js.external— внешние модули, установленные в проекте.import— любой импорт.
Список модификаторов от более важного к менее важному:
side_effect— импорты с побочным эффектом.type— импорты типов TypeScript.value— импорты значений.default— импорты с default-спецификатором.wildcard— импорты со спецификатором вида* as.named— импорты с хотя бы одним именованным спецификатором.По умолчанию: см. ниже
["builtin", "external", ["internal", "subpath"], ["parent", "sibling", "index"], "style", "unknown"]Также можно переопределить глобальную настройку newlinesBetween для конкретных границ групп, включив в список groups объект-маркер { "newlinesBetween": boolean } в нужной позиции.
sortImports.groups[n]
type: object | array | string
sortImports.groups[n].newlinesBetween
type: boolean
sortImports.ignoreCase
type: boolean
Учитывать ли регистр при сортировке.
- По умолчанию:
true
sortImports.internalPattern
type: string[]
Префиксы для распознавания внутренних импортов.
Полезно отличать ваши модули от внешних зависимостей.
- По умолчанию:
["~/", "@/"]
sortImports.newlinesBetween
type: boolean
Добавлять ли пустые строки между группами.
При false между группами не добавляются переносы.
- По умолчанию:
true
sortImports.order
type: "asc" | "desc"
Порядок сортировки: по возрастанию или убыванию.
- По умолчанию:
"asc"
sortImports.partitionByComment
type: boolean
Разрешить использовать комментарии для разделения импортов на логические группы.
При true все комментарии считаются разделителями и создают разделы.
import { b1, b2 } from "b";
// PARTITION
import { a } from "a";
import { c } from "c";- По умолчанию:
false
sortImports.partitionByNewline
type: boolean
Разрешить использовать пустую строку для разделения импортов на логические группы.
При true форматтер не сортирует импорты, если между ними есть пустая строка. Это помогает сохранять заданный порядок логически разделённых групп.
import { b1, b2 } from "b";
import { a } from "a";
import { c } from "c";- По умолчанию:
false
sortImports.sortSideEffects
type: boolean
Сортировать ли импорты с побочным эффектом.
По умолчанию сортировка таких импортов отключена из соображений безопасности.
- По умолчанию:
false
sortPackageJson
type: object | boolean
Сортировать ключи в package.json.
Алгоритм НЕ совместим с prettier-plugin-sort-packagejson. Мы считаем его понятнее и удобнее для навигации. Подробности см. в описании полей.
- По умолчанию:
true
sortPackageJson.sortScripts
type: boolean
Сортировать поле scripts по алфавиту.
- По умолчанию:
false
sortTailwindcss
type: object | boolean
Сортировать классы Tailwind CSS.
Тот же алгоритм, что у prettier-plugin-tailwindcss. Имена опций без префикса tailwind, как в исходном плагине (например config вместо tailwindConfig). Подробности см. в описании полей.
Передайте true или объект для включения с настройками по умолчанию, либо опустите/установите false для отключения.
- По умолчанию: выключено
sortTailwindcss.attributes
type: string[]
Дополнительные атрибуты для сортировки помимо class и className (точное совпадение).
ПРИМЕЧАНИЕ: шаблоны regex пока не поддерживаются.
- По умолчанию:
[] - Пример:
["myClassProp", ":class"]
sortTailwindcss.config
type: string
Путь к файлу конфигурации Tailwind CSS (v3).
ПРИМЕЧАНИЕ: пути считаются относительно файла конфигурации Oxfmt.
- По умолчанию: автоматический поиск
"tailwind.config.js"
sortTailwindcss.functions
type: string[]
Имена пользовательских функций, аргументы которых нужно сортировать (точное совпадение).
ПРИМЕЧАНИЕ: шаблоны regex пока не поддерживаются.
- По умолчанию:
[] - Пример:
["clsx", "cn", "cva", "tw"]
sortTailwindcss.preserveDuplicates
type: boolean
Сохранять дубликаты классов.
- По умолчанию:
false
sortTailwindcss.preserveWhitespace
type: boolean
Сохранять пробелы вокруг классов.
- По умолчанию:
false
sortTailwindcss.stylesheet
type: string
Путь к таблице стилей Tailwind CSS (v4).
ПРИМЕЧАНИЕ: пути считаются относительно файла конфигурации Oxfmt.
- По умолчанию:
theme.cssустановленного Tailwind CSS
tabWidth
type: integer
Число пробелов на уровень отступа.
- По умолчанию:
2 - Переопределяет
.editorconfig.indent_size(с запасным.editorconfig.tab_width)
trailingComma
type: "all" | "es5" | "none"
Печатать висячие запятые там, где это возможно в многострочных конструкциях со списками через запятую.
Однострочный массив, например, никогда не получает висячих запятых.
- По умолчанию:
"all"
useTabs
type: boolean
Отступать табами вместо пробелов.
- По умолчанию:
false - Переопределяет
.editorconfig.indent_style
vueIndentScriptAndStyle
type: boolean
Добавлять ли отступ коду внутри тегов <script> и <style> во Vue-файлах.
- По умолчанию:
false