Change:
Testing There are "" "notebook.outputLineHeight" "" "notebook.outputFontFamily" "notebook.outputFontSize" Ideally these would be all namespaced or prefixed .
This affects how they show up in the settings editor UI, btw: <img width="919" alt="image" src="https://user-"

Discussion:
import { FontMeasurements } from 'vs/editor/browser/config/fontMeasurements'; import { IEditorOptions } from 'vs/editor/common/config/editorOptions'; import { BareFontInfo } from 'vs/editor/common/config/fontInfo'; <del> import { IConfigurationChangeEvent, IConfigurationService } from 'vs/platform/configuration/common/configuration'; </del> <ins> import { ConfigurationTarget, IConfigurationChangeEvent, IConfigurationService } from 'vs/platform/configuration/common/configuration'; </ins> import { InteractiveWindowCollapseCodeCells, NotebookCellDefaultCollapseConfig, NotebookCellInternalMetadata, NotebookSetting, ShowCellStatusBarType } from 'vs/workbench/contrib/notebook/common/notebookCommon'; import { INotebookExecutionStateService } from 'vs/workbench/contrib/notebook/common/notebookExecutionStateService';

const showFoldingControls = this._computeShowFoldingControlsOption(); // const { bottomToolbarGap, bottomToolbarHeight } = this._computeBottomToolbarDimensions(compactView, insertToolbarPosition, insertToolbarAlignment); const fontSize = this.configurationService.getValue<number>('editor.fontSize'); <del> const outputFontSize = this.configurationService.getValue<number>(NotebookSetting.outputFontSize) || fontSize; const outputFontFamily = this.configurationService.getValue<string>(NotebookSetting.outputFontFamily); </del> const markupFontSize = this.configurationService.getValue<number>(NotebookSetting.markupFontSize); const editorOptionsCustomizations = this.configurationService.getValue(NotebookSetting.cellEditorOptionsCustomizations); const interactiveWindowCollapseCodeCells: InteractiveWindowCollapseCodeCells = this.configurationService.getValue(NotebookSetting.interactiveWindowCollapseCodeCells); <del> const outputLineHeight = this._computeOutputLineHeight(); </del> <ins> // TOOD @rebornix remove after a few iterations of deprecated setting let outputLineHeightSettingValue: number; const deprecatedOutputLineHeightSetting = this.configurationService.getValue<number>(NotebookSetting.outputLineHeightDeprecated); if (deprecatedOutputLineHeightSetting !== undefined) { this._migrateDeprecatedSetting(NotebookSetting.outputLineHeightDeprecated, NotebookSetting.outputLineHeight); outputLineHeightSettingValue = deprecatedOutputLineHeightSetting; } else { outputLineHeightSettingValue = this.configurationService.getValue<number>(NotebookSetting.outputLineHeight); } let outputFontSize: number; const deprecatedOutputFontSizeSetting = this.configurationService.getValue<number>(NotebookSetting.outputFontSizeDeprecated); if (deprecatedOutputFontSizeSetting !== undefined) { this._migrateDeprecatedSetting(NotebookSetting.outputFontSizeDeprecated, NotebookSetting.outputFontSize); outputFontSize = deprecatedOutputFontSizeSetting; } else { outputFontSize = this.configurationService.getValue<number>(NotebookSetting.outputFontSize) || fontSize; } let outputFontFamily: string; const deprecatedOutputFontFamilySetting = this.configurationService.getValue<string>(NotebookSetting.outputFontFamilyDeprecated); if (deprecatedOutputFontFamilySetting !== undefined) { this._migrateDeprecatedSetting(NotebookSetting.outputFontFamilyDeprecated, NotebookSetting.outputFontFamily); outputFontFamily = deprecatedOutputFontFamilySetting; } else { outputFontFamily = this.configurationService.getValue<string>(NotebookSetting.outputFontFamily); } const outputLineHeight = this._computeOutputLineHeight(outputLineHeightSettingValue, outputFontSize); </ins> const outputScrolling = this.configurationService.getValue<boolean>(NotebookSetting.outputScrolling); const outputWordWrap = this.configurationService.getValue<boolean>(NotebookSetting.outputWordWrap); const outputLineLimit = this.configurationService.getValue<number>(NotebookSetting.textOutputLineLimit) ?? 30;

})); } <del> private _computeOutputLineHeight(): number { </del> <ins> private _migrateDeprecatedSetting(deprecatedKey: string, key: string): void { const deprecatedSetting = this.configurationService.inspect(deprecatedKey); if (deprecatedSetting.application !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.APPLICATION); this.configurationService.updateValue(key, deprecatedSetting.application.value, ConfigurationTarget.APPLICATION); } if (deprecatedSetting.user !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER); this.configurationService.updateValue(key, deprecatedSetting.user.value, ConfigurationTarget.USER); } if (deprecatedSetting.userLocal !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER_LOCAL); this.configurationService.updateValue(key, deprecatedSetting.userLocal.value, ConfigurationTarget.USER_LOCAL); } if (deprecatedSetting.userRemote !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER_REMOTE); this.configurationService.updateValue(key, deprecatedSetting.userRemote.value, ConfigurationTarget.USER_REMOTE); } if (deprecatedSetting.workspace !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.WORKSPACE); this.configurationService.updateValue(key, deprecatedSetting.workspace.value, ConfigurationTarget.WORKSPACE); } if (deprecatedSetting.workspaceFolder !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.WORKSPACE_FOLDER); this.configurationService.updateValue(key, deprecatedSetting.workspaceFolder.value, ConfigurationTarget.WORKSPACE_FOLDER); } } private _computeOutputLineHeight(lineHeight: number, outputFontSize: number): number { </ins> const minimumLineHeight = 8; <del> let lineHeight = this.configurationService.getValue<number>(NotebookSetting.outputLineHeight); </del> if (lineHeight === 0) { // use editor line height

lineHeight = fontInfo.lineHeight; } else if (lineHeight < minimumLineHeight) { // Values too small to be line heights in pixels are in ems. <del> let fontSize = this.configurationService.getValue<number>(NotebookSetting.outputFontSize); </del> <ins> let fontSize = outputFontSize; </ins> if (fontSize === 0) { fontSize = this.configurationService.getValue<number>('editor.fontSize'); }

} if (outputLineHeight || fontSize || outputFontSize) { <del> configuration.outputLineHeight = this._computeOutputLineHeight(); </del> <ins> const lineHeight = this.configurationService.getValue<number>(NotebookSetting.outputLineHeight); configuration.outputLineHeight = this._computeOutputLineHeight(lineHeight, configuration.outputFontSize); </ins> } if (outputWordWrap) {

cellEditorOptionsCustomizations: 'notebook.editorOptionsCustomizations', consolidatedRunButton: 'notebook.consolidatedRunButton', openGettingStarted: 'notebook.experimental.openGettingStarted', <del> textOutputLineLimit: 'notebook.output.textLineLimit', </del> globalToolbarShowLabel: 'notebook.globalToolbarShowLabel', markupFontSize: 'notebook.markup.fontSize', interactiveWindowCollapseCodeCells: 'interactiveWindow.collapseCellInputCode', <del> outputLineHeight: 'notebook.outputLineHeight', outputFontSize: 'notebook.outputFontSize', outputFontFamily: 'notebook.outputFontFamily', </del> kernelPickerType: 'notebook.kernelPicker.type', outputScrolling: 'notebook.experimental.outputScrolling', <ins> textOutputLineLimit: 'notebook.output.textLineLimit', </ins> outputWordWrap: 'notebook.output.wordWrap', <ins> outputLineHeightDeprecated: 'notebook.outputLineHeight', outputLineHeight: 'notebook.output.lineHeight', outputFontSizeDeprecated: 'notebook.outputFontSize', outputFontSize: 'notebook.output.fontSize', outputFontFamilyDeprecated: 'notebook.outputFontFamily', outputFontFamily: 'notebook.output.fontFamily', </ins> logging: 'notebook.logging', } as const;