vscode-copilot-release icon indicating copy to clipboard operation
vscode-copilot-release copied to clipboard

Provide option to move "sparkle" (Modify Using Copilot) to just a regular command

Open matschaffer-roblox opened this issue 1 year ago • 12 comments

The new sparkle icon is pretty distracting since it shows up even when just highlighting to do something like a copy/paste operation.

Screenshot 2024-02-07 at 8 21 01 PM

I'd like an option to disable it instead have a command-palette version of the same Modify Using Copilot command.

matschaffer-roblox avatar Feb 08 '24 04:02 matschaffer-roblox

Ah, thanks to https://github.com/microsoft/vscode-copilot-release/issues/735 I found that:

"editor.lightbulb.enabled": "off",

works to disable the sparkle. Looks like "onCode" was the old behavior, but the lightbulb was a lot less distracting I think.

It'd still be nice to have a "Modify Using Copilot" command. Doesn't look like it's available from the command palette in 1.86.0

matschaffer-roblox avatar Feb 08 '24 04:02 matschaffer-roblox

(Repost from #735) For those who want to retain the original light bulb for code actions and disable the Copilot sparkle icon:

"github.copilot.editor.enableCodeActions": false

AnsonH avatar Feb 10 '24 06:02 AnsonH

Hi @matschaffer-roblox thanks for posting this issue. You have correctly found the setting name. The code action modify using copilot still exists, you will however most likely find it in the code action menu when the icon is a lightbulb with a sparkle, not just the sparkle. The reason for this is because the lightbulb with a sparkle icon is used to show when the code action menu has both standard code actions and AI code actions. The modify using copilot code action often appears in conjunction with other standard code actions.

Screenshot 2024-02-19 at 09 34 06

aiday-mar avatar Feb 19 '24 08:02 aiday-mar

Interesting! Not sure I've seen the sparkle lightbulb combo before. Is there maybe a color override for the bulb/sparkle/sparklebulb?

I think with a lower saturation it might be less distracting.

Update: looks like yes. I set "workbench.colorCustomizations": { "editorLightBulb.foreground": "#e4b8279b" } as an initial test

matschaffer-roblox avatar Feb 20 '24 00:02 matschaffer-roblox

Hi yes there is a color override, which you just found in your settings. This color is used for all three icons as you mentioned.

aiday-mar avatar Feb 20 '24 08:02 aiday-mar

Lightbulb was NEXT TO a problem that it suggested it could fix.

Sparkle is OVER THE code I am writing obstructing it so it`s hard to read it. Even if there is nothing to "fix"

Copilot "Fix it" being LLM is often doing stupid things that are not what I intended. Unlike code actions (aka light bulb) which are strict context aware code transformations that will do exactly what it says on the label. Refactorings and code shifts have to be precise - You can't replace these with LLM`s guesswork.

Overwriting, disabling, replacing features of vs code like this is obtrusive.

Copilot with each update creeps in like a virus infecting VS Code breaking features that worked well before and didn't need any AI in them.

I enjoy copilot when I need it. When its not needed It shouldn't get in my way ( or sparkle in my Face )

Please be useful, not obtrusive, not abusive, not "in your face". Having to change 20 settings after installing a plugin just to make it bearable to use.

You are doing great work, and its appreciated - no need to "push" it as that will just ruin the experience.

PS> In general I feel Microsoft could learn the power of being subtle. ;-)

ev45ive avatar Mar 06 '24 07:03 ev45ive

Hi @ev45ive thanks for the comment. We will take that into consideration.

aiday-mar avatar Mar 06 '24 08:03 aiday-mar

  • "github.copilot.editor.enableCodeActions": false - also removes the action from ligthbulb menu, where it is tolerable addition, not standing out;
  • "editor.lightbulb.enabled": "onCode" - seems to do just enough to remove the sparkle from empty lines. But it is not obvious for me whether it is a proper solution.

I assume the idea behind current implementation is that there might be multiple content generators. But I would really appreciate a more subtle way to access them when I actually need them. In-your-face, always present sparkle is too much. It could've been something equally subtle to folding symbol in the gutter/line numbers area - no bright colors, only visible on hover. (This might be an issue in a different place that was exposed by Copilot. I cbb to find the right place to report it but will upvote it if anyone provide the right link.)

And individual providers, like Copilot, can always have more granular options. Copilot seems to be tapping into different menus and panels in random ways to see what will stick... While you're doing the UI research on users - expect all attempts can be frustrating and provide appropriate toggles.

KillyMXI avatar Mar 14 '24 15:03 KillyMXI

Just adding on: the sparkle is EXTREMELY distracting, placing itself ON TOP of code I just wrote that I need to see to continue my thought. I like Copilot and want to keep using it. But I don't want it hindering me to the point of searching for solutions to turn off sparkle and making comments in issues.

kraig-droid avatar Mar 14 '24 19:03 kraig-droid

As was previously mentioned can disable the copilot code actions using "github.copilot.editor.enableCodeActions": false and set "editor.lightbulb.enabled": "onCode" to revert the behavior of the lightbulb to the previous behavior.

aiday-mar avatar Mar 15 '24 08:03 aiday-mar

+1 That this is incredibly annoying and really ought to be shown in the Settings for the Copilot extension, not a secret setting where I have to find this issue to know how to turn it off.

marclove avatar Apr 03 '24 00:04 marclove

Yes, I find this extremely irritating! Why put the sparkle ON TOP OF THE CODE ??? I found this to fix it: https://github.com/microsoft/vscode-copilot-release/issues/735#issuecomment-1886589021 through reddit: https://www.reddit.com/r/vscode/comments/198tg6z/how_to_disable_those_blocking_irritating_star_in/ where I added "editor.lightbulb.enabled": "onCode" as the last line in my settings.json file inside the bracket.

The sparkle icon should to be either moved or REmoved as default.

voljumet avatar Apr 03 '24 10:04 voljumet

hey all! in addition to onCode settings or disabling Copilot Code Actions, the widget will now use a "best case" placement and can spawn in the gutter as to not block any code! if there is space above, it will spawn above. if there is space below, it will spawn below.

there have also been improvements on the TS side to make the lightbulb appear significantly less (by making Move To actions more explicit vs. implicit). See https://github.com/microsoft/TypeScript/pull/58548

in many cases, the sparkle will still show up on empty lines or when there are diagnostics unless "github.copilot.editor.enableCodeActions" is set to false, but we hope this will mitigate how often it covers your actual code.

This is released in our latest Insiders already and is shipping in 1.92.

justschen avatar Jul 31 '24 17:07 justschen