Расширение Prettier vscode, игнорирующее файлы конфигурации
Я не могу получить более красивое расширение для использования моих файлов конфигурации. Он продолжает использовать глобальные настройки (как определено в настройке пути конфигурации в vscode). Я сделал пример проекта:
https://github.com/Supperhero1/prettierTest
Я установил для tabWidth значение 1 в файле .prettierrc. Когда я запускаю "npx prettier --write." пакет prettier правильно форматирует документ test.ts, чтобы иметь отступ в единицу, но если я сохраню файл (у меня включен формат при сохранении), он будет отформатирован обратно в глобальную настройку (4 пробела). Я удалил все настройки в глобальных настройках, но затем по умолчанию используется вкладка с двумя пробелами. Кажется, что расширение полностью игнорирует файл конфигурации. У коллеги есть расширение, и оно отлично работает с файлами конфигурации.
Я пытаюсь выяснить, что может переопределять настройку, в описании расширения указано, что приоритет определения настроек следующий:
Prettier configuration file
.editorconfig
Visual Studio Code Settings (Ignored if any other configuration is present)
И в официальных документах приоритет разрешения файла конфигурации:
A "prettier" key in your package.json file.
A .prettierrc file written in JSON or YAML.
...
Видя, что у меня нет более красивого ключа в моем файле package.json, не должно быть ничего, что могло бы переопределить мой файл .prettierrc. Я попытался перезапустить vscode, но это не помогло. У кого-нибудь еще была эта проблема, я не уверен, где искать, чтобы решить эту проблему ...
10 ответов
Кажется, что расширение prettier VSCode использует файл конфигурации в настройках VSCode поверх локального, даже если эта конфигурация является пустым файлом json, затем он возвращается к настройкам по умолчанию вместо локальных (из .prettierrc). Когда я удалил путь из параметра Prettier: Config Path в VSCode, он работал, как ожидалось.
Думаю, я ожидал, что файл по этому пути будет запасным вариантом, когда у вас нет локального файла конфигурации, но, видя, как этот файл, кажется, перезаписывает все остальные настройки, я предполагаю, что предполагаемое использование - установить пользовательский параметр по умолчанию а затем установите параметр рабочего пространства для каждого рабочего пространства, где вы не хотите использовать значение по умолчанию. Или просто оставьте опору пустой в пользовательских настройках.
В VS Code нажмите
Ctrl + shift + p
чтобы открыть палитру команд, затем выберите
Предпочтения: откройте настройки (JSON) и добавьте строку среди других настроек, которые у вас есть:
"prettier.configPath": ""
Сохраните файл. Теперь расширение Prettier учитывает ваши локальные файлы конфигурации .prettierrc . В основном
Prettier: Config Path Path to the prettier configuration file
опция отменяет все другие файлы конфигурации независимо от размещения.
Я столкнулся с этой проблемой, мне потребовалось много времени, чтобы решить ее. И, наконец, я нашел решение своей проблемы, похожее на ваше.
- В VS Code нажмите открыть палитру команд (Ctrl + Shift + P)
- Найдите и выберите это: Формат документа с...
- После выбора этого выберите Prettier - средство форматирования кода , чтобы сделать его средством форматирования по умолчанию.
Мне кажется, что мой VSCode уже был настроен на использование собственного внутреннего парсера, и из-за этого он использовался вместо этого (например, при выполнении форматирования при сохранении
Я нуждался в этом в моем
settings.json
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
Итак, у меня возникла та же проблема с ошибкой: «Обнаружена локальная конфигурация (т.е. .prettierrc или .editorconfig), конфигурация VS Code не будет использоваться»
Решение состоит в том, чтобы отключить эти параметры в vscode красивее:
Prettier: используйте конфигурацию редактора — отметьте ее как отключенную
Добавление editor.defaultFormatter в настройки VSCode помогло мне,
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.formatOnPaste": false,
"prettier.useEditorConfig": false,
"prettier.useTabs": false,
"prettier.configPath": ".prettierrc"
}
Я пробовал так много разных способов, которые рекомендовали другие люди; однако ничего не работало для репозитория. Единственный способ, который сработал со мной, — это удалить программу Prettier из VScode. Мой рабочий репозиторий в настоящее время имеет следующие правила форматирования в «.editorconfig», «.eslintrc.json», «.prettierrc.html.json», «.prettierrc.ts.json», «.prettierrc.scss.json» локально.
Мое решение было тем, что указано в руководстве по расширению.
«prettier.resolveGlobalModules»: правда
И после этого он соблюдает локальную конфигурацию
Мне пришлось установить prettier в качестве форматировщика по умолчанию для определенного языка. По какой-то причине просто установил его по умолчанию с помощью "editor.defaultFormatter": "esbenp.prettier-vscode"
не работает. Однако,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
сработало.
У нас похожая проблема, я решил ее так.
- В коде VS нажмите: ctrl + shift + p
- Найдите и перейдите в «Предпочтения»: «Открыть настройки» (JSON)
- Как только вы окажетесь в settings.json, нажмите ctrl + f и найдите это: prettier.useEditorConfig
- Убедитесь, что для его значения установлено значение true, например: «prettier.useEditorConfig»: true