automate braceless return substitution for long lines

Per [bjorn3][https://github.com/bjorn3] suggestion resolves cases where
an early return is moved to a separate line due to line width formatting.

This setting changes
```
if (a very long condition) return;
```
to
```
if (a very long
    condition) {
  return;
}
```
while keeping
```
if (short) return;
```
as is.

In pathological cases this may cause `npm run fix` not to fix formatting
in one go and may require running it twice.
This commit is contained in:
Andrei Listochkin 2022-05-17 18:31:51 +01:00
parent e0df2c9bee
commit 00a97272f2
3 changed files with 5 additions and 2 deletions

View file

@ -11,7 +11,7 @@ export async function applySnippetWorkspaceEdit(edit: vscode.WorkspaceEdit) {
}
for (const [uri, edits] of edit.entries()) {
const editor = await editorFromUri(uri);
if (editor)
if (editor) {
await editor.edit((builder) => {
for (const indel of edits) {
assert(
@ -21,6 +21,7 @@ export async function applySnippetWorkspaceEdit(edit: vscode.WorkspaceEdit) {
builder.replace(indel.range, indel.newText);
}
});
}
}
}