Allow formatting of unsaved buffers with prettier (#12095)
This fixes #4529 by allowing unsaved buffers to be formatted with prettier. Steps to do that: 1. Create a new buffer 2. Set language for the buffer (e.g.: `language selector: toggle` and JSON) 3. In settings, set prettier parser for language (can't be inferred, since we don't have filename) and allow formatting with prettier: ```json { "languages": { "JSON": { "prettier": { "allowed": true, "parser": "json" } } } } ``` 4. Use `editor: format` Release Notes: - Added ability to format unsaved buffers with Prettier. Requirement is to set a Prettier parser in the user settings. Example for JSON: `{ "languages": { "JSON": { "prettier": { "allowed": true, "parser": "json" } } } }` ([#4529](https://github.com/zed-industries/zed/issues/4529)). Demo: https://github.com/zed-industries/zed/assets/1185253/d24e490b-2e2c-4a5d-95a8-fc8675523780
This commit is contained in:
parent
b451af4906
commit
c290d924f1
4 changed files with 21 additions and 7 deletions
|
@ -186,11 +186,17 @@ async function handleMessage(message, prettier) {
|
|||
}
|
||||
|
||||
let resolvedConfig = {};
|
||||
if (params.options.filepath !== undefined) {
|
||||
if (params.options.filepath) {
|
||||
resolvedConfig =
|
||||
(await prettier.prettier.resolveConfig(params.options.filepath)) || {};
|
||||
}
|
||||
|
||||
// Marking the params.options.filepath as undefined makes
|
||||
// prettier.format() work even if no filepath is set.
|
||||
if (params.options.filepath === null) {
|
||||
params.options.filepath = undefined;
|
||||
}
|
||||
|
||||
const plugins =
|
||||
Array.isArray(resolvedConfig?.plugins) &&
|
||||
resolvedConfig.plugins.length > 0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue