jiebi/CodeConvo huggingface dataset:
Code change:
Testing In the export flow, there's the step to "Export as...". The options are "File" and "Github" <img width="615" alt="image" src="https://user-"I can make the educated guess that I'm not exporting the whole of Github from my VS Code window, but it'd be better to say "Github Gist" instead, or "Export to" instead of "Export as". I prefer the former since it's clear where it's going--otherwise people might assume it creates a repo on their account or something.
It was GitHub Gist before, after feedback I changed to GitHub. I will bring this to UX and see what other think too.
Good feedback. We will also do a user study next week so we will see how users react here. Alternative rendering: "GitHub" and then "gist" as the description a bit to the right - QuickPick should support this.
There was some confusion in the user study when exporting as GitHub. They were expecting that it will be part of a repository. So calling it GitHub Gist might be the way to go.
I think adding as description would be good
!
Lovely, tried it out. Verified.

Related discussion:
text: class FileUserDataProfileContentHandler implements IUserDataProfileContentHandler { readonly name = localize('local', "Local"); <ins> readonly description = localize('file', "file"); </ins> constructor( @IFileDialogService private readonly fileDialogService: IFileDialogService,
Code change:
Testing In the export flow, there's the step to "Export as...". The options are "File" and "Github" <img width="615" alt="image" src="https://user-"I can make the educated guess that I'm not exporting the whole of Github from my VS Code window, but it'd be better to say "Github Gist" instead, or "Export to" instead of "Export as". I prefer the former since it's clear where it's going--otherwise people might assume it creates a repo on their account or something.
It was GitHub Gist before, after feedback I changed to GitHub. I will bring this to UX and see what other think too.
Good feedback. We will also do a user study next week so we will see how users react here. Alternative rendering: "GitHub" and then "gist" as the description a bit to the right - QuickPick should support this.
There was some confusion in the user study when exporting as GitHub. They were expecting that it will be part of a repository. So calling it GitHub Gist might be the way to go.
I think adding as description would be good
!
Lovely, tried it out. Verified.

Related discussion:
text: export interface IUserDataProfileContentHandler { readonly name: string; <ins> readonly description?: string; </ins> readonly extensionId?: string; saveProfile(name: string, content: string, token: CancellationToken): Promise<ISaveProfileResult | null>; readProfile(idOrUri: string | URI, token: CancellationToken): Promise<string | null>;
Code change:
Testing In the export flow, there's the step to "Export as...". The options are "File" and "Github" <img width="615" alt="image" src="https://user-"I can make the educated guess that I'm not exporting the whole of Github from my VS Code window, but it'd be better to say "Github Gist" instead, or "Export to" instead of "Export as". I prefer the former since it's clear where it's going--otherwise people might assume it creates a repo on their account or something.
It was GitHub Gist before, after feedback I changed to GitHub. I will bring this to UX and see what other think too.
Good feedback. We will also do a user study next week so we will see how users react here. Alternative rendering: "GitHub" and then "gist" as the description a bit to the right - QuickPick should support this.
There was some confusion in the user study when exporting as GitHub. They were expecting that it will be part of a repository. So calling it GitHub Gist might be the way to go.
I think adding as description would be good
!
Lovely, tried it out. Verified.

Related discussion:
text: export interface ProfileContentHandler { readonly name: string; <ins> readonly description?: string; </ins> saveProfile(name: string, content: string, token: CancellationToken): Thenable<{ readonly id: string; readonly link: Uri } | null>; readProfile(idOrUri: string | Uri, token: CancellationToken): Thenable<string | null>; }
Code change:
My impression of the slowness that mentioned In stable and insiders, I think the run button shows up at about the same time. Around 7-9s from "reload window" to the run button appearing, hard to tell whether stable is slightly faster. But after it appears, and the preferred kernel has been discovered, I see "Discovering Kernels" for another 5s or more, which could lead to an impression of slowness if the user doesn't realize they can go ahead and run a cell at this point. Originally posted by in
<img width="183" alt="image" src="https://user-"When there is already a selected kernel, we should show the kernel name and a spinner if there are pending detection tasks.

Related discussion:
text: static updateKernelStatusAction(notebook: NotebookTextModel, action: IAction, notebookKernelService: INotebookKernelService, scopedContextKeyService?: IContextKeyService) { const detectionTasks = notebookKernelService.getKernelDetectionTasks(notebook); if (detectionTasks.length) { <ins> const info = notebookKernelService.getMatchingKernel(notebook); </ins> action.enabled = true; <del> action.label = localize('kernels.detecting', "Detecting Kernels"); </del> action.class = ThemeIcon.asClassName(ThemeIcon.modify(executingStateIcon, 'spin')); <ins> if (info.selected) { action.label = info.selected.label; const kernelInfo = info.selected.description ?? info.selected.detail; action.tooltip = kernelInfo ? localize('kernels.selectedKernelAndKernelDetectionRunning', "Selected Kernel: {0} (Kernel Detection Tasks Running)", kernelInfo) : localize('kernels.detecting', "Detecting Kernels"); } else { action.label = localize('kernels.detecting', "Detecting Kernels"); } </ins> return; }
Code change:
My impression of the slowness that mentioned In stable and insiders, I think the run button shows up at about the same time. Around 7-9s from "reload window" to the run button appearing, hard to tell whether stable is slightly faster. But after it appears, and the preferred kernel has been discovered, I see "Discovering Kernels" for another 5s or more, which could lead to an impression of slowness if the user doesn't realize they can go ahead and run a cell at this point. Originally posted by in
<img width="183" alt="image" src="https://user-"When there is already a selected kernel, we should show the kernel name and a spinner if there are pending detection tasks.

Related discussion:
text: static updateKernelStatusAction(notebook: NotebookTextModel, action: IAction, notebookKernelService: INotebookKernelService) { const detectionTasks = notebookKernelService.getKernelDetectionTasks(notebook); if (detectionTasks.length) { <ins> const info = notebookKernelService.getMatchingKernel(notebook); </ins> action.enabled = true; <del> action.label = localize('kernels.detecting', "Detecting Kernels"); </del> action.class = ThemeIcon.asClassName(ThemeIcon.modify(executingStateIcon, 'spin')); <ins> if (info.selected) { action.label = info.selected.label; const kernelInfo = info.selected.description ?? info.selected.detail; action.tooltip = kernelInfo ? localize('kernels.selectedKernelAndKernelDetectionRunning', "Selected Kernel: {0} (Kernel Detection Tasks Running)", kernelInfo) : localize('kernels.detecting', "Detecting Kernels"); } else { action.label = localize('kernels.detecting', "Detecting Kernels"); } </ins> return; }
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: protected readonly _commandService: ICommandService ) { } <del> async showQuickPick(editor: IActiveNotebookEditor, wantedId?: string): Promise<boolean> { </del> <ins> async showQuickPick(editor: IActiveNotebookEditor, wantedId?: string, skipAutoRun?: boolean): Promise<boolean> { </ins> const notebook = editor.textModel; const scopedContextKeyService = editor.scopedContextKeyService; const matchResult = this._getMatchingResult(notebook);
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: const quickPick = this._quickInputService.createQuickPick<KernelQuickPickItem>(); const quickPickItems = this._getKernelPickerQuickPickItems(notebook, matchResult, this._notebookKernelService, scopedContextKeyService); <del> if (quickPickItems.length === 1 && supportAutoRun(quickPickItems[0])) { return await this._handleQuickPick(editor, quickPickItems[0]); </del> <ins> if (quickPickItems.length === 1 && supportAutoRun(quickPickItems[0]) && !skipAutoRun) { return await this._handleQuickPick(editor, quickPickItems[0], quickPickItems as KernelQuickPickItem[]); </ins> } quickPick.items = quickPickItems;
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: quickPick.activeItems = activeItems; }, this); <del> const pick = await new Promise<KernelQuickPickItem | undefined>((resolve, reject) => { </del> <ins> const pick = await new Promise<{ selected: KernelQuickPickItem | undefined; items: KernelQuickPickItem[] }>((resolve, reject) => { </ins> quickPick.onDidAccept(() => { const item = quickPick.selectedItems[0]; if (item) { <del> resolve(item); </del> <ins> resolve({ selected: item, items: quickPick.items as KernelQuickPickItem[] }); </ins> } else { <del> resolve(undefined); </del> <ins> resolve({ selected: undefined, items: quickPick.items as KernelQuickPickItem[] }); </ins> } quickPick.hide();
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: kernelDetectionTaskListener.dispose(); kernelChangeEventListener.dispose(); quickPick.dispose(); <del> resolve(undefined); </del> <ins> resolve({ selected: undefined, items: quickPick.items as KernelQuickPickItem[] }); </ins> }); quickPick.show(); }); <del> if (pick) { return await this._handleQuickPick(editor, pick); </del> <ins> if (pick.selected) { return await this._handleQuickPick(editor, pick.selected, pick.items); </ins> } return false;
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: scopedContextKeyService: IContextKeyService ): QuickPickInput<KernelQuickPickItem>[]; <del> protected async _handleQuickPick(editor: IActiveNotebookEditor, pick: KernelQuickPickItem) { </del> <ins> protected async _handleQuickPick(editor: IActiveNotebookEditor, pick: KernelQuickPickItem, quickPickItems: KernelQuickPickItem[]): Promise<boolean> { </ins> if (isKernelPick(pick)) { const newKernel = pick.kernel; this._selecteKernel(editor.textModel, newKernel);
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: }; } <del> protected override async _handleQuickPick(editor: IActiveNotebookEditor, pick: KernelQuickPickItem): Promise<boolean> { </del> <ins> protected override async _handleQuickPick(editor: IActiveNotebookEditor, pick: KernelQuickPickItem, items: KernelQuickPickItem[]): Promise<boolean> { </ins> if (pick.id === 'selectAnother') { <del> return this.displaySelectAnotherQuickPick(editor); </del> <ins> return this.displaySelectAnotherQuickPick(editor, items.length === 1 && items[0] === pick); </ins> } <del> return super._handleQuickPick(editor, pick); </del> <ins> return super._handleQuickPick(editor, pick, items); </ins> } <del> private async displaySelectAnotherQuickPick(editor: IActiveNotebookEditor) { </del> <ins> private async displaySelectAnotherQuickPick(editor: IActiveNotebookEditor, kernelListEmpty: boolean) { </ins> const notebook: NotebookTextModel = editor.textModel; const disposables = new DisposableStore(); return new Promise<boolean>(resolve => { // select from kernel sources const quickPick = this._quickInputService.createQuickPick<KernelQuickPickItem>(); <del> quickPick.title = localize('selectAnotherKernel', "Select Another Kernel"); </del> <ins> quickPick.title = kernelListEmpty ? localize('select', "Select Kernel") : localize('selectAnotherKernel', "Select Another Kernel"); </ins> quickPick.busy = true; quickPick.buttons = [this._quickInputService.backButton]; quickPick.show();
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: disposables.add(quickPick.onDidTriggerButton(button => { if (button === this._quickInputService.backButton) { quickPick.hide(); <del> resolve(this.showQuickPick(editor)); </del> <ins> resolve(this.showQuickPick(editor, undefined, true)); </ins> } })); disposables.add(quickPick.onDidAccept(async () => {
Code change:
Testing microsoft/vscode-jupyter Open a new window where no kernels have been used Open the kernel picker, get the kernel source picker Click the back button The quick pick flashes closed/opened and shows the source picker again
Was trying the MRU out with my new machine and ran into the same thing. Just adding a few more comments: The progress bar makes it look like the process to find kernels just hangs I'd expect to see like the old experience feels unfinished--it's my first time picking a kernel for this project so I expect it to tell me to just !

Related discussion:
text: } resolve(true); } else { <del> return resolve(this.displaySelectAnotherQuickPick(editor)); </del> <ins> return resolve(this.displaySelectAnotherQuickPick(editor, false)); </ins> } } else if (isKernelPick(quickPick.selectedItems[0])) { await this._selecteKernel(notebook, quickPick.selectedItems[0].kernel);
Code change:
Type: <bBug</bthe set to the cursor around with arrows. Animation is there. something. Animation is not there. VS Code version: Code - Insiders 1.75.0-insider (, 2022-12-12T05:36:38.306Z) OS version: Darwin arm64 22.1.0 Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (42)</summaryExtensionVersion ------ better-comments3.0.2 vscode-nginx-conf0.1.3 ng-template15.0.2 vscode-tailwindcss0.9.1 better-toml0.3.2 npm-intellisense1.4.3 vscode-eslint2.3.0 vscode-quick-select0.2.9 xml2.5.1 gitlens13.1.1 scroll-faster0.2.2 prettier-vscode9.10.3 vscode-jest-runner0.4.59 auto-rename-tag0.1.10 shell-format7.2.2 macros1.2.1 vscode-pull-request-github0.57. vscode-postfix-ts1.11.3 Angular213.0.0 center-editor-window2.3.0 graphql-for-vscode1.15.3 vscode-clangd0.1.23 ts-error-translator0.5.1 dotenv1.0.1 vscode-docker1.23.1 black-formatter2022.7. isort2022.9. python2022.21. vscode-pylance2022.12.21 vscode-typescript-next5.0. vsliveshare1.0.5788 prisma4.7.1 vscode-yaml1.10.1 better-pageup-pagedown0.0.1 rust-analyzer0.4.1316 vs-code-prettier-eslint5.0.4 justfile2.1.0 vscode-scss-formatter2.4.4 shellcheck0.29.1 vscode-input-sequence0.2.0 errorlens3.6.0 vscode-lldb1.8.1 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Maybe related to /assign
This was an intentional change to disable the animation when typing/deleting. See
okay, that makes perfect sense. closing.
Also having the same issue. Has there been a fix?
We have intentionally removed animating the cursor when typing for which explicitly asks us to do that. But I think some folks actually prefered the old behavior of animating also when typing?
Yes, I love the animating when typing.
A good common ground could be that it becomes a setting to also have the caret animated while typing
I've pushed a change where there will be 3 possible values for : off: Smooth caret animation is disabled explicit: Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture. This should cover users who don't want it like in issue on: Smooth caret animation is always enabled
thank you for the changes. I noticed now cursorSmoothCaretAnimation is turned on by default and can't be turned off at all. Looks like a bug.
see which is already fixed.

Related discussion:
text: registerSimpleEditorSettingMigration('autoIndent', [[false, 'advanced'], [true, 'full']]); registerSimpleEditorSettingMigration('matchBrackets', [[true, 'always'], [false, 'never']]); registerSimpleEditorSettingMigration('renderFinalNewline', [[true, 'on'], [false, 'off']]); <ins> registerSimpleEditorSettingMigration('cursorSmoothCaretAnimation', [[true, 'on'], [false, 'off']]); </ins> registerEditorSettingMigration('autoClosingBrackets', (value, read, write) => { if (value === false) {
Code change:
Type: <bBug</bthe set to the cursor around with arrows. Animation is there. something. Animation is not there. VS Code version: Code - Insiders 1.75.0-insider (, 2022-12-12T05:36:38.306Z) OS version: Darwin arm64 22.1.0 Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (42)</summaryExtensionVersion ------ better-comments3.0.2 vscode-nginx-conf0.1.3 ng-template15.0.2 vscode-tailwindcss0.9.1 better-toml0.3.2 npm-intellisense1.4.3 vscode-eslint2.3.0 vscode-quick-select0.2.9 xml2.5.1 gitlens13.1.1 scroll-faster0.2.2 prettier-vscode9.10.3 vscode-jest-runner0.4.59 auto-rename-tag0.1.10 shell-format7.2.2 macros1.2.1 vscode-pull-request-github0.57. vscode-postfix-ts1.11.3 Angular213.0.0 center-editor-window2.3.0 graphql-for-vscode1.15.3 vscode-clangd0.1.23 ts-error-translator0.5.1 dotenv1.0.1 vscode-docker1.23.1 black-formatter2022.7. isort2022.9. python2022.21. vscode-pylance2022.12.21 vscode-typescript-next5.0. vsliveshare1.0.5788 prisma4.7.1 vscode-yaml1.10.1 better-pageup-pagedown0.0.1 rust-analyzer0.4.1316 vs-code-prettier-eslint5.0.4 justfile2.1.0 vscode-scss-formatter2.4.4 shellcheck0.29.1 vscode-input-sequence0.2.0 errorlens3.6.0 vscode-lldb1.8.1 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Maybe related to /assign
This was an intentional change to disable the animation when typing/deleting. See
okay, that makes perfect sense. closing.
Also having the same issue. Has there been a fix?
We have intentionally removed animating the cursor when typing for which explicitly asks us to do that. But I think some folks actually prefered the old behavior of animating also when typing?
Yes, I love the animating when typing.
A good common ground could be that it becomes a setting to also have the caret animated while typing
I've pushed a change where there will be 3 possible values for : off: Smooth caret animation is disabled explicit: Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture. This should cover users who don't want it like in issue on: Smooth caret animation is always enabled
thank you for the changes. I noticed now cursorSmoothCaretAnimation is turned on by default and can't be turned off at all. Looks like a bug.
see which is already fixed.

Related discussion:
text: private _readOnly: boolean; private _cursorBlinking: TextEditorCursorBlinkingStyle; private _cursorStyle: TextEditorCursorStyle; <del> private _cursorSmoothCaretAnimation: boolean; </del> <ins> private _cursorSmoothCaretAnimation: 'off' | 'explicit' | 'on'; </ins> private _selectionIsEmpty: boolean; private _isComposingInput: boolean;