@quicksand-cloud/prettier-config
Version:
QuickSand Cloud Prettier 配置 - 企业级代码格式化配置,支持多种文件类型和智能导入排序
88 lines (66 loc) • 2.26 kB
JavaScript
/**
* QuickSand Cloud Prettier config
* @type {import('prettier').Config}
*/
const config = {
// 指定代码换行的行长。
printWidth: 80,
// 指定每个缩进级别的空格数。
tabWidth: 2,
// 使用制表符而不是空格进行缩进。
useTabs: false,
// 在语句末尾打印分号。
semi: true,
// 使用单引号而不是双引号。
singleQuote: true,
// 更改对象属性周围的引号。
quoteProps: 'as-needed',
// 在 JSX 中使用单引号而不是双引号。
jsxSingleQuote: false,
// 在多行逗号分隔的句法结构中尽可能打印尾随逗号。
trailingComma: 'all',
// 在对象文字中的括号之间打印空格。
bracketSpacing: true,
// 将多行 HTML(HTML、JSX、Vue、Angular)元素的 `>` 放在最后一行的末尾,而不是单独放在下一行。
bracketSameLine: false,
// 在唯一的箭头函数参数周围包含括号。
arrowParens: 'always',
// 仅格式化文件的一部分。
rangeStart: 0,
// 仅格式化文件的一部分。
rangeEnd: Infinity,
// Prettier 可以限制自己只格式化包含特殊注释(pragma)的文件。
requirePragma: false,
// 在已被 Prettier 格式化的文件顶部插入一个特殊的 @format 标记。
insertPragma: false,
// Prettier 默认不会更改 markdown 文本的换行,因为有些服务使用换行敏感的渲染器。
proseWrap: 'preserve',
// 指定 HTML、Vue、Angular 和 Handlebars 的全局空白敏感度。
htmlWhitespaceSensitivity: 'css',
// 是否缩进 Vue 文件中的 <script> 和 <style> 标签。
vueIndentScriptAndStyle: false,
// 行尾换行符。
endOfLine: 'lf',
// 控制 Prettier 如何格式化嵌入在代码中的代码。
embeddedLanguageFormatting: 'auto',
importOrder: [
'<BUILTIN_MODULES>',
'',
'<THIRD_PARTY_MODULES>',
'',
'^[.]',
'',
'^(?!.*[.]css$)[./].*$',
'.css$',
],
// 插件列表
plugins: [
'@prettier/plugin-oxc',
'prettier-plugin-packagejson',
// https://www.npmjs.com/package/@ianvs/prettier-plugin-sort-imports
'@ianvs/prettier-plugin-sort-imports',
'prettier-plugin-jsdoc',
'prettier-plugin-sh',
],
};
export default config;