Настраиваю форматирование кода в Angular 7 проекте.
В корне проекта в файле .prettierrc написал следующие настройки:
{
"singleQuote": true,
"printWidth": 140,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"bracketSpacing": true,
"arrowParens": "avoid",
"requirePragma": false,
"insertPragma": false,
"proseWrap": "preserve",
"htmlWhitespaceSensitivity": "ignore",
"endOfLine": "lf"
}
+ расширение Prettier в VSCode установлено.
Начал просматривать файлы и заметил, что на JSON файлы prettier никак не действует. Нагуглил, что в настройки VSCode нужно добавить строку
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
Вот все мои настройки:
{
"emmet.triggerExpansionOnTab": true,
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
"window.zoomLevel": 0,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"python.jediEnabled": false,
"editor.formatOnSave": true,
"html.format.wrapLineLength": 120,
"editor.codeActionsOnSave": {
"source.organizeImports": true,
},
"beautify.config": {
"indent_size": 2,
"html": {
"wrap_attributes": "force"
}
},
"beautify.language": {
"css": []
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
"editor.defaultFormatter": "HookyQR.beautify"
},
"prettier.singleQuote": true,
"prettier.printWidth": 120,
"prettier.tabWidth": 2,
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
}
Теперь, если я сохраняю такой JSON файл
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "../../dist/out-tsc/apps/appeals",
"types": []
},
"include": [
"**/*.ts"
],
"exclude": [
"src/test-setup.ts",
"**/*.spec.ts",
"**/*.stories.ts"
]
}
То он преобразуется в такой:
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "../../dist/out-tsc/apps/appeals",
"types": []
},
"include": ["**/*.ts"],
"exclude": ["src/test-setup.ts", "**/*.spec.ts", "**/*.stories.ts"]
}
Я не хочу, чтобы массивы сворачивались в одну строку, но при этом код форматировался Prettier'ом (чтобы отступы выравнивались по правилу и т.д.), как это сделать?