jiebi/CodeConvo huggingface dataset:
Change:
return this.provideExcludeCompletionItems(location, range); } <ins> // files.defaultLanguage if (location.path[0] === 'files.defaultLanguage') { return this.provideLanguageCompletionItems(location, range); } </ins> return this.provideLanguageOverridesCompletionItems(location, position); }

Discussion:
VSCode Version: 1.2.1 OS Version: Windows 10 64x Steps to Reproduce: create new file, before save file with '.js' extension and the manual language selection, need to have option to default language e.g. JavaScript, not plaintext as default
We would need to introduce a workbench configuration such that there is a default language mode for new files opened. Such that it is being picked up before a user manuly chooses a mode or sets the file extension.
I would think this could also be done nicely from an extension.
This is one of my key uses from PowerShell ISE that is hard to convert over to VS Code. I use the Untitled page often to construct commands and scripts rather than doing it in terminal because its much easier to edit and I'm not wanting to save it just yet. The trick though is this is Visual Studio Code and versatile so sometimes I will want the default to be different based on the language I'm focusing on in a given period. The two ways to handle this would be: Command Line option to select default language on startup. File New --Language menu options The first option allows me to create a shortcut focused on my language. VS Code PowerShell and VS Code C#. It would also make it easier for extensions to configure the environment more for their use if they knew someone was starting it up as their language. The second option should not be defaults, but rather configurations for me to add my own list to the File menu. I like both approaches but if I had to choose one, the first I think could be more useful.
I just looked into making an extension for this but there doesn't seem to be an API to change the language ID of a TextDocument. I tried passing the language ID as a parameter to but it always displays the quick pick dialog. Any ideas?
I think this can be done via a new command using the new API:
That doesn't work for new files that the user creates using "File -New", "Files: New File" or double-clicking in the tab area. Though maybe I should just send a PR to VS Code to add an official setting for default language mode :)
Oh yeah, but I would start with an extension first to see how it works. You can easily map it to Ctrl+N for "New File" by default.

All in all, also not opposed to seeing a PR on this, e.g. could be something like editor.defaultLanguage or file.defaultMode.
maybe? Not sure that most users know what a "mode" is.
I'm going to work on this today!
Verify: a new setting allows to configure the default language mode a new untitled file should get you can still change the mode from the picker and the untitled file will keep this association even between restarts
Change:
if ((<FileOperationError>error).fileOperationResult === FileOperationResult.FILE_EXCEEDS_MEMORY_LIMIT) { const memoryLimit = Math.max(MIN_MAX_MEMORY_SIZE_MB, +this.textResourceConfigurationService.getValue<number>(undefined, 'files.maxMemoryForLargeFilesMB') || FALLBACK_MAX_MEMORY_SIZE_MB); <del> throw createErrorWithActions(localize('fileTooLargeForHeapError', "To open a file of this size, you need to restart and allow it to use more memory"), { </del> <ins> throw createErrorWithActions(localize('fileTooLargeForHeapError', "To open a file of this size, you need to restart and allow {0} to use more memory", this.productService.nameShort), { </ins> actions: [ toAction({ id: 'workbench.window.action.relaunchWithIncreasedMemoryLimit', label: localize('relaunchWithIncreasedMemoryLimit', "Restart with {0} MB", memoryLimit), run: () => {

Discussion:
Issue Type: <bBug</bWhat's "it" here? I assume it means VS Code. Should probably be explicit. VS Code version: Code 1.55.2 (, 2021-04-13T09:36:32.643Z) OS version: Darwin x64 19.6.0 <details<summarySystem Info</summary </details<details<summaryExtensions (6)</summaryExtensionVersion ------ vscode-sqlite0.12.0 rainbow-csv1.8.1 dotenv1.0.1 vscode-js-profile-flame0.0.15 material-icon-theme4.6.0 rewrap1.14.0 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Change:
accessibilityProvider: new ExplorerAccessibilityProvider(), ariaLabel: nls.localize('treeAriaLabel', "Files Explorer"), identityProvider: { <del> getId: (stat: ExplorerItem) => stat.resource </del> <ins> getId: (stat: ExplorerItem) => { if (stat instanceof NewExplorerItem) { return `new:${stat.resource}`; } return stat.resource; } </ins> }, keyboardNavigationLabelProvider: { getKeyboardNavigationLabel: (stat: ExplorerItem) => {

Discussion:
Issue Type: <bBug</bExplorer asks to input file name for a new file on the wrong level after pressing <kbdEscape</kbdbutton. On the gif file below we have focus on directory, but input field created on the root level of the project. ! asks to create this issue. Related issue is Keyboard navigation: simple. Extension to switching keyboard context is installed. VS Code version: Code - Insiders 1.32.0-insider (, 2019-02-22T08:34:22.116Z) OS version: Darwin x64 18.2.0 <details<summarySystem Info</summary </details<details<summaryExtensions (1)</summaryExtensionVersion ------ atom-keybindings3.0.6 </details<!-- generated by issue reporter --
My understanding is that this is because keyboard navigation still attempts to select the nearest file beginning with when you press , and that the “create file” action is only triggered secondary to that, so the focus has already shifted when the file is created. Super annoying.
Change:
@IContextKeyService contextKeyService: IContextKeyService, @IConfigurationService private readonly configurationService: IConfigurationService ) { <del> super(editor, { keepEditorSelection: true }); </del> <ins> super(editor, { keepEditorSelection: true, isAccessible: true }); </ins> this._contextKeyService = contextKeyService.createScoped(this.domNode); this._scopedInstantiationService = instantiationService.createChild(new ServiceCollection(

Discussion:
Ref: I would expect the comment editor to behave just like a regular editor window, but in my case it is not. I don't hear screen reader feedback as I move through words and lines with the keyboard. Also, when I press a routing cursor key on my braille display, it does not move the cursor to the desired character. Tested with NVDA and JAWS. Invoke the action to leave a comment in the current line Write some text Use ctrl+left and ctrl+right to move through words Use up and down arrow keys to move through lines If you have a braille display with routing keys, press a routing cursor key to move to a specific character in the text
Change:
this._oldTelemetryEnablement = this.getTelemetryConfiguration(); this._level = level; const telemetryDetails = this.getTelemetryDetails(); <ins> // Remove all disposed loggers this._telemetryLoggers.forEach((logger, key) => { if (logger.isDisposed) { this._telemetryLoggers.delete(key); } }); </ins> // Loop through all loggers and update their level this._telemetryLoggers.forEach(logger => { logger.updateTelemetryEnablements(telemetryDetails.isUsageEnabled, telemetryDetails.isErrorsEnabled);

Discussion:
Testing Given this code: I was expecting my event handlers not to fire since the logger is disposed, but they still fire.
This still repros for me <img width="1210" alt="image" src="https://user-"
Change:
target = element.isDirectory ? element : element.parent!; } <del> const targetFile = findValidPasteFileTarget(explorerService, target, { resource: fileToPaste, isDirectory: fileToPasteStat.isDirectory, allowOverwrite: pasteShouldMove || incrementalNaming === 'disabled' }, incrementalNaming); if (incrementalNaming === 'disabled') { const canOverwrite = await askForOverwrite(fileService, dialogService, targetFile); if (!canOverwrite) { return; } </del> <ins> const targetFile = await findValidPasteFileTarget( explorerService, fileService, dialogService, target, { resource: fileToPaste, isDirectory: fileToPasteStat.isDirectory, allowOverwrite: pasteShouldMove || incrementalNaming === 'disabled' }, incrementalNaming ); if (!targetFile) { return undefined; </ins> } return { source: fileToPaste, target: targetFile };

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.73.0-insider OS Version: KDE Neon 5.26.2 Steps to Reproduce: to settings (UI). for "duplicate". "Explorer: Incremental Naming" to . the file explorer, hold down the key (to copy a file instead of moving) and drag a file to the same directory. Actual result: VSCode hangs until I am presented the "This window is not responding" dialg. Clicking has the same effect as . Expected result: I am telling VSCode to duplicate a file, while I have taken away its algorithm to automatically create new file names. Therefore I might expect VSCode to show a dialog with a text input. The text input would contain the file's current name, which I can alter. Confirming the dialog would copy the file using the new name. Or something to this effect. But maybe that solution is trying to counter a symptom rather than solving the root of the problem. Because how would should VSCode respond when drag-copying multiple files? Maybe the root of the problem is the ability to set "Explorer: Incremental Naming" to in the first place. Maybe VSCode must always have a 'duplicate file naming algorithm' in order to function? Even if it is a one. Removing and using the algorithm as a bare minimum would surely fix the problem. Addendum: The description of states the user "will be prompted to override the existing file". So this might be the expected / intended result.
Change:
return null; } <ins> private getWorkingArea(display: Display): Rectangle | undefined { // Prefer the working area of the display to account for taskbars on the // desktop being positioned somewhere (https://github.com/Microsoft/vscode/issues/50830). // // Linux X11 sessions sometimes report wrong display bounds, so we validate // the reported sizes are positive. if (display.workArea.width > 0 && display.workArea.height > 0) { return display.workArea; } if (display.bounds.width > 0 && display.bounds.height > 0) { return display.bounds; } return undefined; } </ins> getBounds(): Electron.Rectangle { const pos = this._win.getPosition(); const dimension = this._win.getSize();

Discussion:
A fresh install of Code - stable, insiders and code-oss - will spawn a floating window relative to the top of the screen, not to the work area. Code stores the window position, so moving the window makes it spawn in the new location next time. ! Issue Type: <bBug</bSteps to reproduce: Taskbar at top of screen Display resolution: 1366x768 Install fresh copy of Code. Run Code (with or without extensions disabled) VS Code version: Code 1.23.1+ OS version: Windows_NT x64 10.0. <!-- generated by issue reporter --
via
Change:
async readFile(resource: URI): Promise<Uint8Array> { const hasKey = await this.hasKey(resource.path); if (!hasKey) { <del> return Promise.reject(new FileSystemError(resource, FileSystemProviderErrorCode.FileNotFound)); </del> <ins> return Promise.reject(FileSystemError.FileNotFound(resource)); </ins> } const value = await this.getValue(resource.path); return VSBuffer.fromString(value).buffer;

Discussion:
<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Add an method to the interface. The current options are: trying to stat the and seeing if it fails — we have no way to tell why it failed; reading a parent directory — we may not have read access to the parent directory; using node's — only works for the local filesystem.
I see s are spec'd to thow on when the file doesn't exist, but does not spec such errors.
We have no plans for adding and instead should be used (this goes along the deprecated to NodeJS's -deprecation). Still, I do agree that we should spec the error
Would be a passable solution?
Re-open for API proposal/finalization. Proposal is to add a field to the -class
should I rename the issue to better reflect the proposal?
Reactions during the API meeting were positive, so I am confident that we can finalize this during the current milestone. One feedback item was to always have a value for , e.g. let its default value be something like or
I did a quick search of the codebase, and it looks like is usually used for such cases in the various error code enums.
This is now in and will be stable API with the next relase. thanks for the help
Change:
import { DiffEditorInput } from 'vs/workbench/common/editor/diffEditorInput'; import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; import { relative } from 'path'; <ins> import { IProcessEnvironment, isWindows } from 'vs/base/common/platform'; </ins> export class ConfigurationResolverService implements IConfigurationResolverService { _serviceBrand: any;

Discussion:
VSCode Version:0.10.13 alpha OS Version:Windows 10 Steps to Reproduce: an variable to your ex. ${env.PATH} "command": "echo", "isShellCommand": true, "args": ["${env.PATH}"], the task. This will expand correctly on Linux and OS X but not Windows since the expansion is case sensitive and PATH on Windows is "Path". Env Var expansion shouldn't be case sensitive so that the same task can run on all platform. This bug was requested by in vscode-docs issue
this is done by the resolver service. IMO env variables on all OSes are case insensitive. Should we address this.
Let's keep it open and if some user is passionate he can tackle it
On linux and macOS environment variables are case sensitive, so "Path" and "PATH" are different variables on linux and macOS (but not on Windows). So your statement from above "IMO env variables on all OSes are case insensitive." is not correct, right? so you are asking for making env var lookup case insensitive on Windows only, correct?
I thought they are always case insensitive. So it should be case insensitive then on Windows only
I'm actually about done with a change for this if you want to take a look.
thanks, I will review the PR.
did you want me to squash it or anything (fixed a broken test because I forgot the existing code returned an empty string for missing environment variables)? Different projects have different requirements and I didn't see anything about squashing in your contrib docs.
no need to squash, I will add the comments to the PR directly if something is needed. Thanks
Change:
var viewItem = this.getItemAround(event.target); <del> if (!viewItem) { </del> <ins> if (!viewItem || (event.posx === 0 && event.posy === 0 && event.browserEvent.type === DOM.EventType.DRAG_LEAVE)) { </ins> // dragging outside of tree if (this.currentDropTarget) {

Discussion:
Unsure how I got into this state but changing different files doesn't fix it !
Joao maybe you have an idea.
Sure, drag a file from the desktop over the explorer and press <kbdEscape</kbd.
looks suspicious in though changing that to call seems to break within-tree-dnd (while it fixes this issue).
This code is treacherous since it's full of hacks to make it work across all browsers Monaco used to support.
Change:
"version.txt": "_clock_light", "version": "_clock_light", "mvnw": "_maven_light", <ins> "pom.xml": "_maven_light", </ins> "tsconfig.json": "_tsconfig_light", "swagger.json": "_json_1_light", "swagger.yml": "_json_1_light",

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Can the default file icon theme be updated in VS Code (seems just need to follow the to run the script) files should by now have the Maven (mvnw) icon but are still showing regular XML icon.
Verify that the files now have the Maven (mvnw) icon
Change:
get isNewAppInstall() { return isNewAppInstall(initData.telemetryInfo.firstSessionDate); }, <del> createTelemetryLogger(appender: vscode.TelemetrySender): vscode.TelemetryLogger { </del> <ins> createTelemetryLogger(sender: vscode.TelemetrySender): vscode.TelemetryLogger { </ins> checkProposedApiEnabled(extension, 'telemetryLogger'); <del> return extHostTelemetry.instantiateLogger(extension, appender); </del> <ins> ExtHostTelemetryLogger.validateSender(sender); return extHostTelemetry.instantiateLogger(extension, sender); </ins> }, openExternal(uri: URI, options?: { allowContributedOpeners?: boolean | string }) { return extHostWindow.openUri(uri, {

Discussion:
This looks like we have telemetry loggers without appenders. Can we add a strict check or in the API impl?
Change:
this.win.setFullScreen(willBeFullScreen); <del> // Windows: Hide the menu bar but still allow to bring it up by pressing the Alt key if (platform.isWindows) { </del> <ins> // Windows & Linux: Hide the menu bar but still allow to bring it up by pressing the Alt key if (platform.isWindows || platform.isLinux) { </ins> if (willBeFullScreen) { this.setMenuBarVisibility(false); } else {

Discussion:
Issue was closed with commit . The commit the requested option to add an option for toggling visibility of the main menu, but restricted it to be shown only when running the Windows version. I can see why toggling the menu bar probably would either not work or just not make sense on OS X. Users running Linux window managers that have a menu bar per window would benefit from the setting as much as users of the Windows version though.
Change:
private renderProcessGroupHeader(sectionName: string, body: HTMLElement, container: HTMLElement) { const headerRow = document.createElement('tr'); <del> const data = document.createElement('td'); data.textContent = sectionName; data.colSpan = 4; headerRow.appendChild(data); const twistie = document.createElement('img'); this.updateSectionCollapsedState(!this.collapsedStateCache.get(sectionName), body, twistie, sectionName); data.prepend(twistie); </del> <ins> const headerData = document.createElement('td'); headerData.colSpan = 4; headerRow.appendChild(headerData); const headerContainer = document.createElement('div'); headerContainer.className = 'header'; headerData.appendChild(headerContainer); const twistieContainer = document.createElement('div'); const twistieCodicon = new CodiconLabel(twistieContainer); this.updateSectionCollapsedState(!this.collapsedStateCache.get(sectionName), body, twistieCodicon, sectionName); headerContainer.appendChild(twistieContainer); const headerLabel = document.createElement('span'); headerLabel.textContent = sectionName; headerContainer.appendChild(headerLabel); </ins> <del> this.listeners.add(addDisposableListener(data, 'click', (e) => { </del> <ins> this.listeners.add(addDisposableListener(headerData, 'click', (e) => { </ins> const isHidden = body.classList.contains('hidden'); <del> this.updateSectionCollapsedState(isHidden, body, twistie, sectionName); </del> <ins> this.updateSectionCollapsedState(isHidden, body, twistieCodicon, sectionName); </ins> })); container.appendChild(headerRow);

Discussion:
Noticed how the process explorer is bundling and still. Can we not use Codicons for this? //cc
Oh this seems to be used in the issue reporter, not process explorer. But not sure how to actually see it...
are we actually using these icons? I'm not seeing it: !
it looks like these are only used when VSCode is connected to a remote to show the remote processes as well. I didn't even know we had that, pretty cool: ! Anyhow, my request still seems valid.
PR up at !
Change:
*--------------------------------------------------------------------------------------------*/ .monaco-editor .on-type-rename-decoration { <del> background: rgba(255, 0, 0, 0.3); border-left: 1px solid rgba(255, 0, 0, 0.3); </del> <ins> border-left: 1px solid transparent; </ins> /* So border can be transparent */ background-clip: padding-box; }

Discussion:
! Most likely an oversight, we should create a color token for this so that it's themeable. Found .
Change:
} } <ins> interface IMultiRunTest { currentLabel: string; parent: TestId | undefined; testItem: { test: IncrementalTestCollectionItem; resultItem: TestResultItem | undefined; }; } </ins> class MultiRunTestDecoration extends RunTestDecoration implements ITestDecoration { <ins> constructor( tests: readonly { test: IncrementalTestCollectionItem; resultItem: TestResultItem | undefined; }[], visible: boolean, model: ITextModel, @ICodeEditorService codeEditorService: ICodeEditorService, @ITestService testService: ITestService, @IContextMenuService contextMenuService: IContextMenuService, @ICommandService commandService: ICommandService, @IConfigurationService configurationService: IConfigurationService, @ITestProfileService testProfileService: ITestProfileService, @IContextKeyService contextKeyService: IContextKeyService, @IMenuService menuService: IMenuService, @IQuickInputService private readonly quickInputService: IQuickInputService, ) { super(tests, visible, model, codeEditorService, testService, contextMenuService, commandService, configurationService, testProfileService, contextKeyService, menuService); } </ins> override getContextMenuActions() { const allActions: IAction[] = []; <del> if (this.tests.some(({ test }) => this.testProfileService.capabilitiesForTest(test) & TestRunProfileBitset.Run)) { </del> <ins> const canRun = this.tests.some(({ test }) => this.testProfileService.capabilitiesForTest(test) & TestRunProfileBitset.Run); if (canRun) { </ins> allActions.push(new Action('testing.gutter.runAll', localize('run all test', 'Run All Tests'), undefined, undefined, () => this.defaultRun())); } <del> if (this.tests.some(({ test }) => this.testProfileService.capabilitiesForTest(test) & TestRunProfileBitset.Debug)) { </del> <ins> const canDebug = this.tests.some(({ test }) => this.testProfileService.capabilitiesForTest(test) & TestRunProfileBitset.Debug); if (canDebug) { </ins> allActions.push(new Action('testing.gutter.debugAll', localize('debug all test', 'Debug All Tests'), undefined, undefined, () => this.defaultDebug())); } <del> const testItems = this.tests.map(testItem => ({ </del> <ins> const testItems = this.tests.map((testItem): IMultiRunTest => ({ </ins> currentLabel: testItem.test.item.label, testItem, parent: TestId.fromString(testItem.test.item.extId).parentId,

Discussion:
the setup of microsoft/vscode-python click the Test gutter decoration Numbers appear in random order: <img width="485" alt="image" src=""Also, if you change to , you'll get a very slow opening menu. cc
Maybe we should have a "X more tests..." item that opens a quickpick after like 10. What do you think
yeah agreed that its not worth displaying more than 10 tests in a quick pick and I think the "X more tests..." will be a good way to tell users
Change:
if (!this.hasFocus() || this.readonlyContext.get()) { return; } <del> await this.commandService.executeCommand('filesExplorer.paste', event.clipboardData?.files); </del> <ins> if (event.clipboardData?.files?.length) { await this.commandService.executeCommand('filesExplorer.paste', event.clipboardData?.files); } </ins> })); }

Discussion:
I am trying to a file in the one root folder and into another root folder and nothing happens anymore. Is this known? I am using multi-root folder setup. !
I can replicate this issue in VS Code 1.85.1. Cannot copy-paste with both remote folders over SSH as well as local folders. Tried both drag-drop as well as and .