From 5dc89502cb229cfc8d1358f29cf0558551ef8a49 Mon Sep 17 00:00:00 2001 From: MengYX Date: Sat, 18 Dec 2021 21:54:46 +0800 Subject: [PATCH] maintenance: add prettier (cherry picked from commit 559be402c940b7b31bdb2567c23ff17251aabe04) --- .prettierrc.js | 42 ++++++++++++++++++++++++++++++++++++++++++ package-lock.json | 7 +++---- package.json | 3 +++ 3 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 .prettierrc.js diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..77bbe08 --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,42 @@ +// .prettierrc.js +module.exports = { + // 一行最多 120 字符 + printWidth: 120, + // 使用 2 个空格缩进 + tabWidth: 2, + // 不使用缩进符,而使用空格 + useTabs: false, + // 行尾需要有分号 + semi: true, + // 使用单引号 + singleQuote: true, + // 对象的 key 仅在必要时用引号 + quoteProps: 'as-needed', + // jsx 不使用单引号,而使用双引号 + jsxSingleQuote: false, + // 末尾需要有逗号 + trailingComma: 'all', + // 大括号内的首尾需要空格 + bracketSpacing: true, + // jsx 标签的反尖括号需要换行 + bracketSameLine: false, + // 箭头函数,只有一个参数的时候,也需要括号 + arrowParens: 'always', + // 每个文件格式化的范围是文件的全部内容 + rangeStart: 0, + rangeEnd: Infinity, + // 不需要写文件开头的 @prettier + requirePragma: false, + // 不需要自动在文件开头插入 @prettier + insertPragma: false, + // 使用默认的折行标准 + proseWrap: 'preserve', + // 根据显示样式决定 html 要不要折行 + htmlWhitespaceSensitivity: 'css', + // vue 文件中的 script 和 style 内不用缩进 + vueIndentScriptAndStyle: false, + // 换行符使用 lf + endOfLine: 'lf', + // 格式化嵌入的内容 + embeddedLanguageFormatting: 'auto', +}; diff --git a/package-lock.json b/package-lock.json index a4dcc0c..23beffc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,7 +6,7 @@ "packages": { "": { "name": "unlock-music", - "version": "v1.9.1", + "version": "v1.10.0-beta.1", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -36,6 +36,7 @@ "babel-plugin-component": "^1.1.1", "jest": "^27.4.5", "patch-package": "^6.4.7", + "prettier": "2.5.1", "sass": "^1.38.1", "sass-loader": "^10.2.0", "semver": "^7.3.5", @@ -15746,7 +15747,6 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz", "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==", "dev": true, - "optional": true, "bin": { "prettier": "bin-prettier.js" }, @@ -33337,8 +33337,7 @@ "version": "2.5.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz", "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==", - "dev": true, - "optional": true + "dev": true }, "pretty-bytes": { "version": "5.6.0", diff --git a/package.json b/package.json index 275fcf4..99117a8 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,8 @@ "serve": "vue-cli-service serve", "build": "vue-cli-service build", "test": "jest", + "pretty": "prettier --write src/{**/*,*}.{js,ts,jsx,tsx,vue}", + "pretty:check": "prettier --check src/{**/*,*}.{js,ts,jsx,tsx,vue}", "make-extension": "node ./make-extension.js" }, "dependencies": { @@ -44,6 +46,7 @@ "babel-plugin-component": "^1.1.1", "jest": "^27.4.5", "patch-package": "^6.4.7", + "prettier": "2.5.1", "sass": "^1.38.1", "sass-loader": "^10.2.0", "semver": "^7.3.5",