jiebi/CodeConvo huggingface dataset:
Code change:
const model = this.model.read(reader); const suggestion = model?.selectedInlineCompletion.read(reader); const ghostText = model?.ghostText.read(reader); <del> const selectedSuggestItem = model?.selectedSuggestItem.read(reader); this.inlineCompletionVisible.set(selectedSuggestItem === undefined && ghostText !== undefined && !ghostText.isEmpty()); </del> <ins> this.inlineCompletionVisible.set(ghostText !== undefined && !ghostText.isEmpty()); </ins> if (ghostText && suggestion) { this.suppressSuggestions.set(suggestion.inlineCompletion.source.inlineCompletions.suppressSuggestions);

Related discussion:
text: Type: <bBug</bIn previous VS Code version 1.78 when I pressed if inline suggest was visible with suggest widget it hides only inline suggest, if I press again same shortcut it then hides suggest widget. Now with 1.79 it hides both inline suggest and suggest widget. KeybindingService logs: My custom shortcuts to hide inline suggest & suggest widget: I even tried to add to clause and still it hides both. VS Code version: Code 1.79.0 (, 2023-06-07T14:31:03.317Z) OS version: Darwin arm64 22.5.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (12)</summaryExtensionVersion ------ vscode-eslint2.4.0 gitlens13.6.0 prettier-vscode9.13.0 copilot1.88.132 vscode-graphql0.8.13 vscode-graphql-syntax1.2.0 symbols0.0.11 vscode-react-native1.11.0 vscode-thunder-client2.7.6 vscode-fileutils3.10.1 vim1.25.2 quokka-vscode1.0.543 (1 theme extensions excluded) </details<!-- generated by issue reporter --
full text search doesn't reveal the context key anymore. Has that been removed/renamed?
It is
sorry I was writing that instead of copy-pasting. Already updated the issue.
Does it work when you swap the keybinding configurations? (Like literally exchange the positions in the file)
Still the same issue even if I swap places :(
So, its either the or context key. Can you investigate with the F1 Inspect Context Key Tools to see if those context keys are set. Note that it will print context keys on the console of DevTools
<details<summaryContext keys</summary</details
as you can see is and is , but even though inline suggest was visible it returned false.
Same in the monaco, if the suggest widget is visible, the inlineSuggestWidgetVisible will always be false no matter there is any ghost text or not
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected.
Code change:
const model = this.model.read(reader); const suggestion = model?.selectedInlineCompletion.read(reader); const ghostText = model?.ghostText.read(reader); <del> const selectedSuggestItem = model?.selectedSuggestItem.read(reader); this.inlineCompletionVisible.set(selectedSuggestItem === undefined && ghostText !== undefined && !ghostText.isEmpty()); </del> <ins> this.inlineCompletionVisible.set(ghostText !== undefined && !ghostText.isEmpty()); </ins> if (ghostText && suggestion) { this.suppressSuggestions.set(suggestion.inlineCompletion.source.inlineCompletions.suppressSuggestions);

Related discussion:
text: If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Now I see us hiding the suggest widget first and the inline suggest second, is that expected? This is true regardless of what order I declare the keybindings in (I do have the Vim extension installed)
It should hide first inline suggestions and second time you press it, it should hide suggest widget. Try to swap places of keybindings to see if it fixes it (order maybe matters?). Because previously this is how it worked (in 1.78, but regression was introduced in 1.79). EDIT: Oh I see you mentioned that order doesn't matter. Try to add in clause for command (I hope it works).
is it fixed for you on the latest insider builds The following does not work for me either
It works! !
Great, thanks for confirming!
Code change:
this.findInput.inputBox.select(range); } <del> getSelection(): IRange | null { return this.findInput.inputBox.getSelection(); } </del> isSelectionAtEnd(): boolean { return this.findInput.inputBox.isSelectionAtEnd(); }

Related discussion:
text: open normal quick pick () type notice you want symbol search and select the cursor is random, within the word, and doesn't select the previous input anymore
Code change:
async getQuickDiffs(uri: URI, language: string = '', isSynchronized: boolean = false): Promise<QuickDiff[]> { const providers = Array.from(this.quickDiffProviders) <del> .filter(provider => !provider.rootUri || isEqualOrParent(uri, provider.rootUri)) </del> <ins> .filter(provider => !provider.rootUri || this.uriIdentityService.extUri.isEqualOrParent(uri, provider.rootUri)) </ins> .sort(createProviderComparer(uri)); const diffs = await Promise.all(providers.map(async provider => {

Related discussion:
text: Type: <bBug</bTo reproduce: VS Code a folder and choose a git repo with changes a file with changes and notice the gutter is shown a folder to the workspace and choose a git repo the gutter is still visible close the file and reopen it Expected behavior: the gutter is shown Actual behavior: the gutter is not shown this may be related to . actually pretty much the same issue. However a reload (I assume that is ) doesn't help in this case. VS Code version: Code - Insiders 1.77.0-insider (, 2023-03-10T05:24:23.805Z) OS version: WindowsNT x64 10.0. Modes: Sandboxed: Yes <details<summarySystem Info</summary </detailsExtensions: none<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Thanks for the @ mention and for the repro steps!
Also having the same issue. Installing a previous version () helped to solve it (temporarily, until it's fixed).
Folks who are seeing this issue: Could you please install the latest insiders build and confirm that you no longer see the issues there?
Yes. The issue resolved in the latest insider version.
Related Stack Overflow questions: I'd prefer using this one as a duplicate target on Stack Overflow since it's asked much cleaner.
Thanks for confirming that the issue is fixed in insiders!
Wow, so it was a bug, not an actual symlink-issue as I thought. So happy now, thanks! Context: I'll try the fix/update.
This issue seems to be fixed in version 1.76.2 for git repositories, however it is not yet fixed for Mercurial ( extension).
I am still seeing this bug in
can you share some exact repro steps that we can use to reproduce the issue?
I can't reproduce the issue on a new clean git repo, hmm
Im having the same issues, reinstalling helped fix the current file having the issue but any file created after wont show the indicators. Disabling extensions wont work either and Im not sure on how to reproduce the steps Version: 1.76.2 (user setup) OS: Windows_NT x64 10.0.
Code change:
title: { value: 'Preferences', original: 'Preferences', <del> mnemonicTitle: localize('mPreferences', "Preferences") </del> <ins> mnemonicTitle: localize({ key: 'mPreferences', comment: ['&& denotes a mnemonic'] }, "Preferences") </ins> }, when: IsMacNativeContext, order: 9

Related discussion:
text: Issue Type: <bBug</bGo to menu affichage apparence afficher la barre latérale secondaire L'item indique ceci " afficher la bar&re latérale secondaire" Un petit And & se balade Have a nice day VS Code version: Code 1.67.1 (, 2022-05-06T12:37:03.389Z) OS version: WindowsNT x64 10.0. Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (3)</summaryExtensionVersion ------ copilot1.20.5902 vscode-pull-request-github0.42.0 vscode-language-pack-fr1.67.3 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
the translation lacks an extra ampersand to turn this into a mnemonic <img width="501" alt="image" src="https://user-"
can you ensure there's a comment that says "don't touch the ampersand"? Additionally, you can add another comment in the form of: to ensure that they do not get "translated". See this example:
I have the same comment in 275 places across the code base And this is the string
Best I can do is ask for the string to be updated manually to ensure is not translated... but that won't prevent this from happening in the future due to human error. better is using a locked comment like the one above... could also have the be a runtime string instead... but really we need language-aware mnemonics where the position of the changes based on the language but I'm not sure if there's a process for that. do you know?
so I add? what kind of enforcement does this do? does it just force that a mnemonic exists? its not really required that a translation contains a mnemonic even if the original does
I believe it forces that it exists, though or are experts here.
I know a little bit more... this does basically "fail the string" until it meets the criteria of "there should be a somewhere in the string and a translator looks at this. did you get the chance to add this to the comments?
Code change:
const outputElement = (prev.firstChild as HTMLElement | null); if (outputElement && outputElement.getAttribute('output-mime-type') === outputInfo.mime) { // same stream <del> const text = outputInfo.text(); const element = document.createElement('span'); </del> <ins> // find child with same id const existing = outputElement.querySelector(`[output-item-id="${outputInfo.id}"]`) as HTMLElement | null; if (existing) { clearContainer(existing); } const text = outputInfo.text(); const element = existing ?? document.createElement('span'); element.classList.add('output-stream'); element.setAttribute('output-item-id', outputInfo.id); </ins> insertOutput(outputInfo.id, [text], ctx.settings.lineLimit, ctx.settings.outputScrolling, element); outputElement.appendChild(element); return;

Related discussion:
text: <!-- 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/No <!-- 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: Stable & Insiders OS Version: Any Steps to Reproduce: Jupyter extension the following cell against a Python kernel The expected output is fairly simple: ( can appear some where in the middle) However VS Codes output is incorrect We are missing the line breaks (looks like this PR seems to have broken that) (using blockinline-block` fixes this). We have duplicate entries (as you can see below, we have multiple times) i think this has to do with the fact that we're trying to re-use the previous output and append the new stuff into the previous output element Note: This can be repro'ed in stable as well, but if i were to remove the code that tries to append to the previous element, then it looks as expected. Not sure when this part of the code broken though. Didn't go through the change log to determine this, you might have a better idea.
note that this is from the test, so that could probably be modified to check for the fix
It looks like this was briefly solved (at least for me as I reported in ) but the problem is now reappearing.
I agree, I can replicate the same bug again, hence reopening this issue. Looks like subsequent change regressed the fix.
seems to be a worse regression now (only in insiders) and repros without needing to do anything with background threads (unless I just have some bad setting): !
I'm seeing something similar with the JavaScript/tslab notebook I use for teaching async and promises. Previously, the output was inconsistent across runs with sometimes missing or duplicated output.
Code change:
const outputElement = (prev.firstChild as HTMLElement | null); if (outputElement && outputElement.getAttribute('output-mime-type') === outputInfo.mime) { // same stream <del> const text = outputInfo.text(); const element = document.createElement('span'); </del> <ins> // find child with same id const existing = outputElement.querySelector(`[output-item-id="${outputInfo.id}"]`) as HTMLElement | null; if (existing) { clearContainer(existing); } const text = outputInfo.text(); const element = existing ?? document.createElement('span'); element.classList.add('output-stream'); element.setAttribute('output-item-id', outputInfo.id); </ins> insertOutput(outputInfo.id, [text], ctx.settings.lineLimit, ctx.settings.outputScrolling, element); outputElement.appendChild(element); return;

Related discussion:
text: Now all the expected output is present but with line breaks appearing only after some async code (e.g. ) is executed. <img width="661" alt="image" src="https://user-"
I reproduced output shown by above with missing new lines in code-insiders at ~14:00 UTC +1 (CET). In a code-insiders session that has been running last 24 hours. Restarting code-insiders approximately an hour later (15.00 UTC+1), the output is now shown with correct line breaks, see screenshot below. Version: 1.75.0-insider (user setup) Commit: Date: 2023-01-09T05:29:27.679Z Electron: 19.1.8 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Windows_NT x64 10.0. Sandboxed: Yes Output after code-insiders restart: !
confirmed that this no longer seems to reproduce on the latest.
Adding label as confirmed above.
Code change:
})); this._register(this.parentData.parent.onScroll(() => { <del> this.parentData.parent.focus(false); this.cleanupExistingSubmenu(false); </del> <ins> if (this.parentData.submenu === this.mysubmenu) { this.parentData.parent.focus(false); this.cleanupExistingSubmenu(true); } </ins> })); }

Related discussion:
text: VSCode freeze on mouse wheel scrolling with lot of tests: open test explorer, ! right-click on the test button scroll tests with mouse wheel at least twice VS Code version: Code - Insiders 1.64.0-insider (, 2021-12-22T05:15:27.690Z) OS version: Linux x64 5.4.0-92-generic Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (20)</summaryExtensionVersion ------ vscode-eslint2.2.2 gitlens-insiders2021.12.2804 EditorConfig0.16.4 prettier-vscode9.0.0 themeswitch1.0.5 rpm-spec0.3.2 vscode-docker1.18.0 python2022.0.-dev vscode-pylance2021.12.3-pre.1 jupyter2022.1. jupyter-keymap1.0.0 jupyter-renderers1.0.4 remote-containers0.209.6 remote-ssh0.70.0 remote-ssh-edit0.70.0 code-stats-vscode1.0.18 code-spell-checker2.0.14 code-spell-checker-russian2.0.2 cron-explained1.3.1 material-theme3.13.8 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Looks like doesn't help.
Thanks (again) for the issue!
Code change:
const specIcon = gulp.src('resources/linux/rpm/code.xpm', { base: '.' }) .pipe(rename('SOURCES/' + product.applicationName + '.xpm')); <del> const all = es.merge(code, desktop, appdata, icon, spec, specIcon); </del> <ins> const all = es.merge(code, desktop, desktopUrlHandler, appdata, icon, spec, specIcon); </ins> return all.pipe(vfs.dest(getRpmBuildPath(rpmArch))); };

Related discussion:
text: This may be useful as a hint: Please, take a two minutes to look into source, it may work only for :
I think adding a desktop file with that launches VS Code with is what's needed to implement this.
nice relevant gist:
VS Code has native support for opening it's own URL scheme via the hidden argument, I don't think there is a need for wrapper script shenanigans. I'm going to submit a PR.
I've not checked too far into it (Just subscribed to this to keep up to date) but the wrapper script is probably there because in the standard would include the "vscode://" prefix.
That's what should happen, that's what handles. :smiley: You can test if you like. Alternatively you can test this (Which is what the PR adds): For OSS: For release version: Drop it into or and run on that directory.
Code change:
export function incrementFileName(name: string, isFolder: boolean): string { const separators = '[.-_]'; <ins> const maxNumber = Constants.MAX_SAFE_SMALL_INTEGER; </ins> // file.1.txt=>file.2.txt let suffixFileRegex = RegExp('(.*' + separators + ')(d+)(..*)$'); if (!isFolder && name.match(suffixFileRegex)) { return name.replace(suffixFileRegex, (match, g1?, g2?, g3?) => { <del> return g1 + strings.pad(parseInt(g2) + 1, g2.length) + g3; </del> <ins> let number = parseInt(g2); return number < maxNumber ? g1 + strings.pad(number + 1, g2.length) + g3 : strings.format('{0}{1}.1{2}', g1, g2, g3); </ins> }); }

Related discussion:
text: Have file named in explorer Copy/paste it Window hangs This is from We shouldn't attempt this when the number is = Number.MAXSAFEINTEGER. It loops forever here: This bug will happen whenever incrementFileName fails to modify the file name.
I guess only interesting thing about this what we should do in this case as we need to create some new file name? Add without changing the original number?
that sounds reasonable
Code change:
const root = new RootTreeItem(this.debugService.getModel(), this.environmentService, this.contextService); this.tree.setInput(root); <del> let timeout: number; </del> const registerLoadedSourceListener = (session: ISession) => { this.disposables.push(session.onDidLoadedSource(event => { const sessionRoot = root.add(session); sessionRoot.addPath(event.source); <del> clearTimeout(timeout); timeout = setTimeout(() => { if (this.tree) { this.tree.refresh(root, true); } }, 300); </del> <ins> this.shouldRefreshRecursive = true; this.treeRefreshScheduler.schedule(); </ins> })); };

Related discussion:
text: debugging the loaded scripts view open debugging, notice exception in the console can not reproduce with Stable so it might be that my listener refactoring caused this If you pause on exception you will see that caused it.
did you have a chance to look into this? Or would you like me to investigate? I suspect this is breaking the loaded scripts view and is the root cause for
no, please investigate since this and was working before, and I haven't touched this code for two weeks.
end session events are not arriving in As a consequence the tree for the session is not properly removed.
I see something differnetly, the end sessions are arriving however when the last session end arrives view starts refreshing the tree and while that is in progress the view gets disposed which throws an exception. Looking into a fix...
I have created a PR which address this issue
Code change:
original: 'Run', mnemonicTitle: nls.localize({ key: 'mRun', comment: ['&& denotes a mnemonic'] }, "&&Run") }, <del> when: ContextKeyExpr.or(CONTEXT_DEBUGGERS_AVAILABLE), </del> order: 6 });

Related discussion:
text: Reminded of this by We currently have a context key (when clause) for the run menu (in the main menu). This means we don't know if the menu should be displayed on startup because it depends on extensions. The Terminal menu also has a context key but resolves very quickly so there is no delay. Should we remove both of these when clauses in favor of keeping them around with possibly disabled menu items. E.g. The "Install additional debuggers" entry should still be shown in the run menu if no current contexts are available.
Assigning to who now owns the Debug UI. Rob let me know if I can help here.
Which menu are you talking about? How is the context menu involved?
Context Menu should have been Context Key. Sorry about that, I'll edit the original post.
Looks like has decided to go this route with the Terminal menu, so I think we should align here too.
So the terminal menu will be shown all the time in web? That's what will happen with Run. I guess it will show "Install additional debuggers" And should other items be disabled or missing? They currently use so are missing. It would look like this <img width="245" alt="image" src="https://user-"I'm fine with that if it's consistent. Sort of gives false hope about what you're going to find, though
Actually, if the Run menu doesn't have a when clause, but all the subitems do and it is false, then the Run menu still doesn't show up. Would that be ok or is that still slow?
Won't install additional debuggers always be visible?
It currently has a when clause to only show up when other debuggers are present, it would only show up if I remove that. And I think "install additional debuggers" usually won't give the user what they want.
I see that entry as a way for users to discover how to get our web-based code execution extensions like Python. Maybe the text is not right? We could even have a web specific entry that filters the extension list to web-supported debuggers instead of all?
Yeah, I think that when those exist we should think about what the onramp looks like. For now I'll remove the when clause on the Run menu if you think that's the right thing to do.
Code change:
original: 'Run', mnemonicTitle: nls.localize({ key: 'mRun', comment: ['&& denotes a mnemonic'] }, "&&Run") }, <del> when: ContextKeyExpr.or(CONTEXT_DEBUGGERS_AVAILABLE), </del> order: 6 });

Related discussion:
text: sounds good, thank you
Ok, this actually isn't working the way I thought it did, and the result is that the Run menu never shows, at all. I must have tested it wrong, maybe you have to restart vscode for native menu changes to take full effect? The current state is that the Run menu has no when clause, and every command inside the menu does have a when clause. But the result seems to be: If the menu doesn't have a when clause, but initially doesn't have any enabled commands inside it, then it doesn't appear and will never appear, even if the commands inside it later get their when clauses flipped to true. The only way to get it to conditionally appear is to add a when clause to the menu itself. Does that sound like a menu bug But also I can just go back to having "Install additional debuggers" enabled all the time, I think that's fine.
that very well could be a menu bug. but thinking about it, I think having the one item always in the menu is necessary because otherwise we still result in the behavior where we don't know for some time on startup whether to show the menu or not which causes flickering.
is it expected that all of these items in the run menu are active in web? <img width="163" alt="image" src="https://user-"
You probably have some extension enabled for web which claims it can debug
Mock Debug and Python, thanks