From 288c34cd37eba7383bfa3581ed9dcf3d54b03b18 Mon Sep 17 00:00:00 2001 From: Remco Haszing Date: Wed, 18 Aug 2021 15:47:50 +0200 Subject: [PATCH] Remove DocumentRangeFormattingEditProvider MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The YAML language service doesn’t support formatting ranges. In practice this means the “Format Selection” option which does the same as “Format Document” is no longer available in the menu that’s opened when pressing F1. --- src/languageFeatures.ts | 37 ------------------------------------- src/yamlMode.ts | 4 ---- 2 files changed, 41 deletions(-) diff --git a/src/languageFeatures.ts b/src/languageFeatures.ts index 4f44610..dee4c30 100644 --- a/src/languageFeatures.ts +++ b/src/languageFeatures.ts @@ -2,7 +2,6 @@ import { editor, IDisposable, IMarkdownString, - IRange, languages, MarkerSeverity, Position, @@ -152,18 +151,6 @@ function fromPosition(position: Position): ls.Position { return { character: position.column - 1, line: position.lineNumber - 1 }; } -function fromRange(range: IRange): ls.Range { - if (!range) { - return; - } - return { - start: { - line: range.startLineNumber - 1, - character: range.startColumn - 1, - }, - end: { line: range.endLineNumber - 1, character: range.endColumn - 1 }, - }; -} function toRange(range: ls.Range): Range { if (!range) { return; @@ -454,27 +441,3 @@ export class DocumentFormattingEditProvider implements languages.DocumentFormatt ); } } - -export class DocumentRangeFormattingEditProvider - implements languages.DocumentRangeFormattingEditProvider { - constructor(private _worker: WorkerAccessor) {} - - provideDocumentRangeFormattingEdits( - model: editor.IReadOnlyModel, - range: Range, - options: languages.FormattingOptions, - ): PromiseLike { - const resource = model.uri; - - return this._worker(resource).then((worker) => - worker - .format(String(resource), fromRange(range), fromFormattingOptions(options)) - .then((edits) => { - if (!edits || edits.length === 0) { - return; - } - return edits.map(toTextEdit); - }), - ); - } -} diff --git a/src/yamlMode.ts b/src/yamlMode.ts index c709165..2a06594 100644 --- a/src/yamlMode.ts +++ b/src/yamlMode.ts @@ -62,10 +62,6 @@ export function setupMode(defaults: LanguageServiceDefaultsImpl): void { languageId, new languageFeatures.DocumentFormattingEditProvider(worker), ), - languages.registerDocumentRangeFormattingEditProvider( - languageId, - new languageFeatures.DocumentRangeFormattingEditProvider(worker), - ), new languageFeatures.DiagnosticsAdapter(languageId, worker, defaults), languages.setLanguageConfiguration(languageId, richEditConfiguration), );