Change:
I have configured the setting <img width="2076" alt="Screenshot 2022-11-09 at 09 49 27" src="https://user-"{ "languageId": "typescript", "base": "/
--------------n Copyright (c) Microsoft Corporation. All rights reserved.n Licensed under the MIT License. See in the project root for license information.n *
-------------/nnimport as platform from 'vs/base/common/platform';nimport { URI } from 'vs/base/common/uri';nnexport namespace Schemas {nnt/nt A schema that is used for models that exist in memorynt only and that have no correspondence on a server or such.nt /ntexport const inMemory = 'inmemory';nnt/nt A schema that is used for setting filesnt /ntexport const vscode = 'vscode';nnt/nt A schema that is used for internal private filesnt /ntexport const internal = 'private';nnt/nt A walk-through document.nt /ntexport const walkThrough = 'walkThrough';nnt/nt An embedded code snippet.nt /ntexport const walkThroughSnippet = 'walkThroughSnippet';nntexport const http = 'http';nntexport const https = 'https';nntexport const file = 'file';nntexport const mailto = 'mailto';nntexport const untitled = 'untitled';nntexport const data = 'data';nntexport const command = 'command';nntexport const vscodeRemote = 'vscode-remote';nntexport const vscodeRemoteResource = 'vscode-remote-resource';nntexport const vscodeUserData = 'vscode-userdata';nntexport const vscodeCustomEditor = 'vscode-custom-editor';nntexport const vscodeNotebook = 'vscode-notebook';nntexport const vscodeNotebookCell = 'vscode-notebook-cell';nntexport const vscodeNotebookCellMetadata = 'vscode-notebook-cell-metadata';ntexport const vscodeNotebookCellOutput = 'vscode-notebook-cell-output';ntexport const vscodeInteractive = 'vscode-interactive';ntexport const vscodeInteractiveInput = 'vscode-interactive-input';nntexport const vscodeSettings = 'vscode-settings';nntexport const vscodeWorkspaceTrust = 'vscode-workspace-trust';nntexport const vscodeTerminal = 'vscode-terminal';nnt/nt Scheme used internally for webviews that aren't linked to a resource (i.e. not custom editors)nt /ntexport const webviewPanel = 'webview-panel';nnt/nt Scheme used for loading the wrapper html and script in webviews.nt /ntexport const vscodeWebview = 'vscode-webview';nnt/nt Scheme used for extension pagesnt /ntexport const extension = 'extension';nnt/nt Scheme used as a replacement of scheme to loadnt files with our custom protocol handler (desktop only).nt /ntexport const vscodeFileResource = 'vscode-file';nnt/nt Scheme used for temporary resourcesnt /ntexport const tmp = 'tmp';nnt/nt Scheme used vs live sharent /ntexport const vsls = 'vsls';nnt/nt Scheme used for the Source Control commit input's text documentnt /ntexport const vscodeSourceControl = 'vscode-scm';n}nnexport const connectionTokenCookieName = 'vscode-tkn';nexport const connectionTokenQueryName = 'tkn';nnclass RemoteAuthoritiesImpl {ntprivate readonly hosts: { [authority: string]: string Record<string, string, coop: boolean, coep: boolean): void {nttif (!(<anyglobalThis).crossOriginIsolated) {nttt// depends on the current context being COIntttreturn;ntt}nttconst value = coop && coep ? '3' : coep ? '2' : '1';nttif (urlOrSearch instanceof URLSearchParams) {ntt(coiSearchParamName, value);ntt} else {nttt(<Record<string, stringurlOrSearch)[coiSearchParamName] = value;ntt}nt}n}n", "input1": "/
--------------n Copyright (c) Microsoft Corporation. All rights reserved.n Licensed under the MIT License. See in the project root for license information.n *
-------------/nnimport as platform from 'vs/base/common/platform';nimport as path from 'vs/base/common/path';nimport { URI } from 'vs/base/common/uri';n// ESM-uncomment-beginn// const useRootPath = true;n// ESM-uncomment-endn// ESM-comment-beginnconst useRootPath = false;n// ESM-comment-endnnexport namespace Schemas {nnt/nt A schema that is used for models that exist in memorynt only and that have no correspondence on a server or such.nt /ntexport const inMemory = 'inmemory';nnt/nt A schema that is used for setting filesnt /ntexport const vscode = 'vscode';nnt/nt A schema that is used for internal private filesnt /ntexport const internal = 'private';nnt/nt A walk-through document.nt /ntexport const walkThrough = 'walkThrough';nnt/nt An embedded code snippet.nt /ntexport const walkThroughSnippet = 'walkThroughSnippet';nntexport const http = 'http';nntexport const https = 'https';nntexport const file = 'file';nntexport const mailto = 'mailto';nntexport const untitled = 'untitled';nntexport const data = 'data';nntexport const command = 'command';nntexport const vscodeRemote = 'vscode-remote';nntexport const vscodeRemoteResource = 'vscode-remote-resource';nntexport const vscodeUserData = 'vscode-userdata';nntexport const vscodeCustomEditor = 'vscode-custom-editor';nntexport const vscodeNotebook = 'vscode-notebook';nntexport const vscodeNotebookCell = 'vscode-notebook-cell';nntexport const vscodeNotebookCellMetadata = 'vscode-notebook-cell-metadata';ntexport const vscodeNotebookCellOutput = 'vscode-notebook-cell-output';ntexport const vscodeInteractive = 'vscode-interactive';ntexport const vscodeInteractiveInput = 'vscode-interactive-input';nntexport const vscodeSettings = 'vscode-settings';nntexport const vscodeWorkspaceTrust = 'vscode-workspace-trust';nntexport const vscodeTerminal = 'vscode-terminal';nnt/nt Scheme used internally for webviews that aren't linked to a resource (i.e. not custom editors)nt /ntexport const webviewPanel = 'webview-panel';nnt/nt Scheme used for loading the wrapper html and script in webviews.nt /ntexport const vscodeWebview = 'vscode-webview';nnt/nt Scheme used for extension pagesnt /ntexport const extension = 'extension';nnt/nt Scheme used as a replacement of scheme to loadnt files with our custom protocol handler (desktop only).nt /ntexport const vscodeFileResource = 'vscode-file';nnt/nt Scheme used for temporary resourcesnt /ntexport const tmp = 'tmp';nnt/nt Scheme used vs live sharent /ntexport const vsls = 'vsls';nnt/nt Scheme used for the Source Control commit input's text documentnt /ntexport const vscodeSourceControl = 'vscode-scm';n}nnexport const connectionTokenCookieName = 'vscode-tkn';nexport const connectionTokenQueryName = 'tkn';nnclass RemoteAuthoritiesImpl {ntprivate readonly hosts: { [authority: string]: string Record<string, string, coop: boolean, coep: boolean): void {nttif (!(<anyglobalThis).crossOriginIsolated) {nttt// depends on the current context being COIntttreturn;ntt}nttconst value = coop && coep ? '3' : coep ? '2' : '1';nttif (urlOrSearch instanceof URLSearchParams) {ntt(coiSearchParamName, value);ntt} else {nttt(<Record<string, stringurlOrSearch)[coiSearchParamName] = value;ntt}nt}n}n", "input2": "/
--------------n Copyright (c) Microsoft Corporation. All rights reserved.n Licensed under the MIT License. See in the project root for license information.n *
-------------/nnimport as platform from 'vs/base/common/platform';nimport { URI } from 'vs/base/common/uri';nnexport namespace Schemas {nnt/nt A schema that is used for models that exist in memorynt only and that have no correspondence on a server or such.nt /ntexport const inMemory = 'inmemory';nnt/nt A schema that is used for setting filesnt /ntexport const vscode = 'vscode';nnt/nt A schema that is used for internal private filesnt /ntexport const internal = 'private';nnt/nt A walk-through document.nt /ntexport const walkThrough = 'walkThrough';nnt/nt An embedded code snippet.nt /ntexport const walkThroughSnippet = 'walkThroughSnippet';nntexport const http = 'http';nntexport const https = 'https';nntexport const file = 'file';nntexport const mailto = 'mailto';nntexport const untitled = 'untitled';nntexport const data = 'data';nntexport const command = 'command';nntexport const vscodeRemote = 'vscode-remote';nntexport const vscodeRemoteResource = 'vscode-remote-resource';nntexport const vscodeUserData = 'vscode-userdata';nntexport const vscodeCustomEditor = 'vscode-custom-editor';nntexport const vscodeNotebook = 'vscode-notebook';nntexport const vscodeNotebookCell = 'vscode-notebook-cell';nntexport const vscodeNotebookCellMetadata = 'vscode-notebook-cell-metadata';ntexport const vscodeNotebookCellOutput = 'vscode-notebook-cell-output';ntexport const vscodeInteractive = 'vscode-interactive';ntexport const vscodeInteractiveInput = 'vscode-interactive-input';nntexport const vscodeSettings = 'vscode-settings';nntexport const vscodeWorkspaceTrust = 'vscode-workspace-trust';nntexport const vscodeTerminal = 'vscode-terminal';nnt/nt Scheme used internally for webviews that aren't linked to a resource (i.e. not custom editors)nt /ntexport const webviewPanel = 'webview-panel';nnt/nt Scheme used for loading the wrapper html and script in webviews.nt /ntexport const vscodeWebview = 'vscode-webview';nnt/nt Scheme used for extension pagesnt /ntexport const extension = 'extension';nnt/nt Scheme used as a replacement of scheme to loadnt files with our custom protocol handler (desktop only).nt /ntexport const vscodeFileResource = 'vscode-file';nnt/nt Scheme used for temporary resourcesnt /ntexport const tmp = 'tmp';nnt/nt Scheme used vs live sharent /ntexport const vsls = 'vsls';nnt/nt Scheme used for the Source Control commit input's text documentnt /ntexport const vscodeSourceControl = 'vscode-scm';n}nnexport const connectionTokenCookieName = 'vscode-tkn';nexport const connectionTokenQueryName = 'tkn';nnclass RemoteAuthoritiesImpl {ntprivate readonly hosts: { [authority: string]: string Record<string, string, coop: boolean, coep: boolean): void {nttif (!(<anyglobalThis).crossOriginIsolated) {nttt// depends on the current context being COIntttreturn;ntt}nttconst value = coop && coep ? '3' : coep ? '2' : '1';nttif (urlOrSearch instanceof URLSearchParams) {ntt(coiSearchParamName, value);ntt} else {nttt(<Record<string, stringurlOrSearch)[coiSearchParamName] = value;ntt}nt}n}n", "result": "/
--------------n Copyright (c) Microsoft Corporation. All rights reserved.n Licensed under the MIT License. See in the project root for license information.n *
-------------/nnimport as platform from 'vs/base/common/platform';nimport as path from 'vs/base/common/path';nimport { URI } from 'vs/base/common/uri';n// ESM-uncomment-beginn// const useRootPath = true;n// ESM-uncomment-endn// ESM-comment-beginnconst useRootPath = false;n// ESM-comment-endnnexport namespace Schemas {nnt/nt A schema that is used for models that exist in memorynt only and that have no correspondence on a server or such.nt /ntexport const inMemory = 'inmemory';nnt/nt A schema that is used for setting filesnt /ntexport const vscode = 'vscode';nnt/nt A schema that is used for internal private filesnt /ntexport const internal = 'private';nnt/nt A walk-through document.nt /ntexport const walkThrough = 'walkThrough';nnt/nt An embedded code snippet.nt /ntexport const walkThroughSnippet = 'walkThroughSnippet';nntexport const http = 'http';nntexport const https = 'https';nntexport const file = 'file';nntexport const mailto = 'mailto';nntexport const untitled = 'untitled';nntexport const data = 'data';nntexport const command = 'command';nntexport const vscodeRemote = 'vscode-remote';nntexport const vscodeRemoteResource = 'vscode-remote-resource';nntexport const vscodeUserData = 'vscode-userdata';nntexport const vscodeCustomEditor = 'vscode-custom-editor';nntexport const vscodeNotebook = 'vscode-notebook';nntexport const vscodeNotebookCell = 'vscode-notebook-cell';nntexport const vscodeNotebookCellMetadata = 'vscode-notebook-cell-metadata';ntexport const vscodeNotebookCellOutput = 'vscode-notebook-cell-output';ntexport const vscodeInteractive = 'vscode-interactive';ntexport const vscodeInteractiveInput = 'vscode-interactive-input';nntexport const vscodeSettings = 'vscode-settings';nntexport const vscodeWorkspaceTrust = 'vscode-workspace-trust';nntexport const vscodeTerminal = 'vscode-terminal';nnt/nt Scheme used internally for webviews that aren't linked to a resource (i.e. not custom editors)nt /ntexport const webviewPanel = 'webview-panel';nnt/nt Scheme used for loading the wrapper html and script in webviews.nt /ntexport const vscodeWebview = 'vscode-webview';nnt/nt Scheme used for extension pagesnt /ntexport const extension = 'extension';nnt/nt Scheme used as a replacement of scheme to loadnt files with our custom protocol handler (desktop only).nt /ntexport const vscodeFileResource = 'vscode-file';nnt/nt Scheme used for temporary resourcesnt /ntexport const tmp = 'tmp';nnt/nt Scheme used vs live sharent /ntexport const vsls = 'vsls';nnt/nt Scheme used for the Source Control commit input's text documentnt /ntexport const vscodeSourceControl = 'vscode-scm';n}nnexport const connectionTokenCookieName = 'vscode-tkn';nexport const connectionTokenQueryName = 'tkn';nnclass RemoteAuthoritiesImpl {ntprivate readonly hosts: { [authority: string]: string Record<string, string, coop: boolean, coep: boolean): void {nttif (!(<anyglobalThis).crossOriginIsolated) {nttt// depends on the current context being COIntttreturn;ntt}nttconst value = coop && coep ? '3' : coep ? '2' : '1';nttif (urlOrSearch instanceof URLSearchParams) {ntt(coiSearchParamName, value);ntt} else {nttt(<Record<string, stringurlOrSearch)[coiSearchParamName] = value;ntt}nt}n}n", "initialResult": "/
--------------n Copyright (c) Microsoft Corporation. All rights reserved.n Licensed under the MIT License. See in the project root for license information.n *
-------------/nnimport as platform from 'vs/base/common/platform';nimport as path from 'vs/base/common/path';nimport { URI } from 'vs/base/common/uri';n// ESM-uncomment-beginn// const useRootPath = true;n// ESM-uncomment-endn// ESM-comment-beginnconst useRootPath = false;n// ESM-comment-endnnexport namespace Schemas {nnt/nt A schema that is used for models that exist in memorynt only and that have no correspondence on a server or such.nt /ntexport const inMemory = 'inmemory';nnt/nt A schema that is used for setting filesnt /ntexport const vscode = 'vscode';nnt/nt A schema that is used for internal private filesnt /ntexport const internal = 'private';nnt/nt A walk-through document.nt /ntexport const walkThrough = 'walkThrough';nnt/nt An embedded code snippet.nt /ntexport const walkThroughSnippet = 'walkThroughSnippet';nntexport const http = 'http';nntexport const https = 'https';nntexport const file = 'file';nntexport const mailto = 'mailto';nntexport const untitled = 'untitled';nntexport const data = 'data';nntexport const command = 'command';nntexport const vscodeRemote = 'vscode-remote';nntexport const vscodeRemoteResource = 'vscode-remote-resource';nntexport const vscodeUserData = 'vscode-userdata';nntexport const vscodeCustomEditor = 'vscode-custom-editor';nntexport const vscodeNotebook = 'vscode-notebook';nntexport const vscodeNotebookCell = 'vscode-notebook-cell';nntexport const vscodeNotebookCellMetadata = 'vscode-notebook-cell-metadata';ntexport const vscodeNotebookCellOutput = 'vscode-notebook-cell-output';ntexport const vscodeInteractive = 'vscode-interactive';ntexport const vscodeInteractiveInput = 'vscode-interactive-input';nntexport const vscodeSettings = 'vscode-settings';nntexport const vscodeWorkspaceTrust = 'vscode-workspace-trust';nntexport const vscodeTerminal = 'vscode-terminal';nnt/nt Scheme used internally for webviews that aren't linked to a resource (i.e. not custom editors)nt /ntexport const webviewPanel = 'webview-panel';nnt/nt Scheme used for loading the wrapper html and script in webviews.nt /ntexport const vscodeWebview = 'vscode-webview';nnt/nt Scheme used for extension pagesnt /ntexport const extension = 'extension';nnt/nt Scheme used as a replacement of scheme to loadnt files with our custom protocol handler (desktop only).nt /ntexport const vscodeFileResource = 'vscode-file';nnt/nt Scheme used for temporary resourcesnt /ntexport const tmp = 'tmp';nnt/nt Scheme used vs live sharent /ntexport const vsls = 'vsls';nnt/nt Scheme used for the Source Control commit input's text documentnt /ntexport const vscodeSourceControl = 'vscode-scm';n}nnexport const connectionTokenCookieName = 'vscode-tkn';nexport const connectionTokenQueryName = 'tkn';nnclass RemoteAuthoritiesImpl {ntprivate readonly hosts: { [authority: string]: string Record<string, string, coop: boolean, coep: boolean): void {nttif (!(<anyglobalThis).crossOriginIsolated) {nttt// depends on the current context being COIntttreturn;ntt}nttconst value = coop && coep ? '3' : coep ? '2' : '1';nttif (urlOrSearch instanceof URLSearchParams) {ntt(coiSearchParamName, value);ntt} else {nttt(<Record<string, stringurlOrSearch)[coiSearchParamName] = value;ntt}nt}n}n" } Version: 1.74.0-insider Commit: Date: 2022-11-08T05:33:58.303Z Electron: 19.1.3 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Darwin arm64 21.6.0 Sandboxed: Yes
There are a lot of assertion failures in the console: <img width="1183" alt="image" src="https://user-"
Hi
I think this got fixed with some diff algorithm bugfixes. !
I can still reproduce in today's Insiders with the steps: unfold the imports in one of the editors the areas are misaligned. I also noticed some more weirdness, like the conflicts not being highlighted: https://user-
Today, folding always causes misalignments. We could fix this by disabling folding for now in the code editors in the merge editor.

Discussion:
import { h, reset } from 'vs/base/browser/dom'; import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels'; import { BugIndicatingError } from 'vs/base/common/errors'; <del> import { autorun, autorunWithStore, derived, IObservable } from 'vs/base/common/observable'; import { EditorExtensionsRegistry, IEditorContributionDescription } from 'vs/editor/browser/editorExtensions'; </del> <ins> import { IObservable, autorun, autorunWithStore, derived } from 'vs/base/common/observable'; </ins> import { IModelDeltaDecoration, MinimapPosition, OverviewRulerLane } from 'vs/editor/common/model'; <del> import { CodeLensContribution } from 'vs/editor/contrib/codelens/browser/codelensController'; </del> import { localize } from 'vs/nls'; import { MenuId } from 'vs/platform/actions/common/actions'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

import { handledConflictMinimapOverViewRulerColor, unhandledConflictMinimapOverViewRulerColor } from 'vs/workbench/contrib/mergeEditor/browser/view/colors'; import { EditorGutter } from 'vs/workbench/contrib/mergeEditor/browser/view/editorGutter'; import { MergeEditorViewModel } from 'vs/workbench/contrib/mergeEditor/browser/view/viewModel'; <del> import { CodeEditorView, createSelectionsAutorun, TitleMenu } from './codeEditorView'; </del> <ins> import { CodeEditorView, TitleMenu, createSelectionsAutorun } from './codeEditorView'; </ins> export class BaseCodeEditorView extends CodeEditorView { constructor(

import { IView, IViewSize } from 'vs/base/browser/ui/grid/grid'; import { Emitter, Event } from 'vs/base/common/event'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; <del> import { autorun, derived, IObservable, observableFromEvent } from 'vs/base/common/observable'; import { IEditorContributionDescription } from 'vs/editor/browser/editorExtensions'; </del> <ins> import { IObservable, autorun, derived, observableFromEvent } from 'vs/base/common/observable'; import { EditorExtensionsRegistry, IEditorContributionDescription } from 'vs/editor/browser/editorExtensions'; </ins> import { CodeEditorWidget } from 'vs/editor/browser/widget/codeEditorWidget'; import { IEditorOptions } from 'vs/editor/common/config/editorOptions'; import { Range } from 'vs/editor/common/core/range'; import { Selection } from 'vs/editor/common/core/selection'; <ins> import { CodeLensContribution } from 'vs/editor/contrib/codelens/browser/codelensController'; import { FoldingController } from 'vs/editor/contrib/folding/browser/folding'; </ins> import { MenuWorkbenchToolBar } from 'vs/platform/actions/browser/toolbar'; import { MenuId } from 'vs/platform/actions/common/actions'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

} <del> protected getEditorContributions(): IEditorContributionDescription[] | undefined { return undefined; </del> <ins> protected getEditorContributions(): IEditorContributionDescription[] { return EditorExtensionsRegistry.getEditorContributions().filter(c => c.id !== FoldingController.ID && c.id !== CodeLensContribution.ID); </ins> } }

import { Toggle } from 'vs/base/browser/ui/toggle/toggle'; import { Action, IAction, Separator } from 'vs/base/common/actions'; import { Codicon } from 'vs/base/common/codicons'; <del> import { ThemeIcon } from 'vs/base/common/themables'; </del> import { Disposable } from 'vs/base/common/lifecycle'; import { clamp } from 'vs/base/common/numbers'; import { autorun, derived, IObservable, ISettableObservable, ITransaction, observableValue, transaction } from 'vs/base/common/observable'; import { noBreakWhitespace } from 'vs/base/common/strings'; <ins> import { ThemeIcon } from 'vs/base/common/themables'; </ins> import { isDefined } from 'vs/base/common/types'; <del> import { EditorExtensionsRegistry, IEditorContributionDescription } from 'vs/editor/browser/editorExtensions'; </del> import { IModelDeltaDecoration, MinimapPosition, OverviewRulerLane } from 'vs/editor/common/model'; <del> import { CodeLensContribution } from 'vs/editor/contrib/codelens/browser/codelensController'; </del> import { localize } from 'vs/nls'; import { MenuId } from 'vs/platform/actions/common/actions'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

} return result; }); <del> protected override getEditorContributions(): IEditorContributionDescription[] | undefined { return EditorExtensionsRegistry.getEditorContributions().filter(c => c.id !== CodeLensContribution.ID); } </del> } export class ModifiedBaseRangeGutterItemModel implements IGutterItemInfo {

import { BugIndicatingError } from 'vs/base/common/errors'; import { toDisposable } from 'vs/base/common/lifecycle'; import { autorun, autorunWithStore, derived, IObservable } from 'vs/base/common/observable'; <del> import { IEditorContributionDescription, EditorExtensionsRegistry } from 'vs/editor/browser/editorExtensions'; </del> import { IModelDeltaDecoration, MinimapPosition, OverviewRulerLane } from 'vs/editor/common/model'; <del> import { CodeLensContribution } from 'vs/editor/contrib/codelens/browser/codelensController'; </del> import { localize } from 'vs/nls'; import { MenuId } from 'vs/platform/actions/common/actions'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration';

} return result; }); <del> protected override getEditorContributions(): IEditorContributionDescription[] | undefined { return EditorExtensionsRegistry.getEditorContributions().filter(c => c.id !== CodeLensContribution.ID); } </del> }