Skip to content

Commit f6b678f

Browse files
authored
Update text edit functionality (#251893)
update text edit
1 parent 315b094 commit f6b678f

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/vs/editor/common/core/edits/textEdit.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ import { assertFn, checkAdjacentItems } from '../../../../base/common/assert.js'
88
import { BugIndicatingError } from '../../../../base/common/errors.js';
99
import { commonPrefixLength, commonSuffixLength } from '../../../../base/common/strings.js';
1010
import { ISingleEditOperation } from '../editOperation.js';
11-
import { StringEdit } from './stringEdit.js';
11+
import { StringEdit, StringReplacement } from './stringEdit.js';
1212
import { Position } from '../position.js';
1313
import { Range } from '../range.js';
1414
import { TextLength } from '../text/textLength.js';
1515
import { AbstractText, StringText } from '../text/abstractText.js';
1616

1717
export class TextEdit {
1818
public static fromStringEdit(edit: StringEdit, initialState: AbstractText): TextEdit {
19-
const edits = edit.replacements.map(e => new TextReplacement(initialState.getTransformer().getRange(e.replaceRange), e.newText));
19+
const edits = edit.replacements.map(e => TextReplacement.fromStringReplacement(e, initialState));
2020
return new TextEdit(edits);
2121
}
2222

@@ -281,6 +281,10 @@ export class TextReplacement {
281281
return new TextReplacement(Range.fromPositions(startPos, endPos), newText);
282282
}
283283

284+
public static fromStringReplacement(replacement: StringReplacement, initialState: AbstractText): TextReplacement {
285+
return new TextReplacement(initialState.getTransformer().getRange(replacement.replaceRange), replacement.newText);
286+
}
287+
284288
constructor(
285289
public readonly range: Range,
286290
public readonly text: string,

0 commit comments

Comments
 (0)