Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce sounds for: inline suggestions, quick fixes and other potential cases #141635

Closed
2 of 4 tasks
isidorn opened this issue Jan 27, 2022 · 24 comments
Closed
2 of 4 tasks
Assignees
Labels
accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues
Milestone

Comments

@isidorn
Copy link
Contributor

isidorn commented Jan 27, 2022

We have already introduced sounds for breakpoints, errors and folded regions. I think this went very well so we should consider to introduce more sounds for:

  • Inline completions
  • Quick fixes
  • Wrapped lines (@isidorn to ponder more about this)
  • Warnings (use the same sound as for errors?)

@gino-scarpino is working on the sound for 1.

@isidorn isidorn added feature-request Request for new features or functionality accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues labels Jan 27, 2022
@isidorn isidorn added this to the February 2022 milestone Jan 27, 2022
@zersiax
Copy link

zersiax commented Jan 27, 2022

Is this also the issue where we track the proposed volume changes to the sounds that were introduced in #130565 ?

@devinprater
Copy link

I wonder if we could use this for indentation sounds, for systems like MacOS or ChromeOS where the screen readers don't natively support automatic reporting of indentation? I put ChromeOS in there because one can use VS Code on the web now.

@isidorn
Copy link
Contributor Author

isidorn commented Jan 27, 2022

@zersiax yes, we could also use this issue to track that request.
@devinprater good idea, we should think about this.

@jvesouza
Copy link

Would it be possible to introduce a sound to indicate the presence of a warning on the line?

@LeonarddeR
Copy link

@devinprater While I'd love your suggestion, I wonder how to determine whether the indentation sounds should be on, i.e. in NVDA they really shouldn't, unless the implementation is better. However, I really dig the implementation in NVDA, where I can benefit a lot from absolute pitch to hear how many tabs/spaces are at the start of the line.

@isidorn
Copy link
Contributor Author

isidorn commented Jan 27, 2022

@jvesouza makes sense. I think we should use probably use the same sound as for errors. Having two distinct sounds might be confusing. I have updated the first comment.

@devinprater
Copy link

devinprater commented Jan 27, 2022 via email

@jareds
Copy link

jareds commented Jan 28, 2022

I don't think the same sound should be used for warnings and errors. My day job is Java development and there are often times when I'm coding and want to temporarily ignore warnings but be notified of errors. An example is creating a local variable but not immediately using it. I know Ill use the variable in a few minutes but don't want to hear a warning sound every time I go over the line.

@jareds
Copy link

jareds commented Jan 28, 2022

Should we use this issue to track a request to have settings for individual sounds? I'm thinking that as we keep adding more sounds it will be more likely that users will want to disable them some or all of the time. I know I already want the ability to disable the sound for folded regions of code, if I've folded a long method to level three so I can see the if statements without the body's I don't need a sound to play every time I hit the if statement.

@alex19EP
Copy link

I think we should use probably use the same sound as for errors. Having two distinct sounds might be confusing.

in my opinion, the sounds should be similar to each other, but still with a slight difference

@gino-scarpino
Copy link

gino-scarpino commented Jan 28, 2022 via email

@Tyriar
Copy link
Member

Tyriar commented Feb 3, 2022

Another case is terminal bell: #47711

@ahicks92
Copy link

Going to chime in. At work, I have the need to know when lines exceed a specific length, as well as other formatting, and this is important enough to me that I was blocked on using VScode for work and stuck on notepad++ becauase of an NVDA add-on that could do what I needed. I ended up paying a friend who does a ton of VSCode extension stuff to write this to solve that problem. It's kind of a hack and prototypey, but works really well if you don't mind the webview abuse we went through to get it working. We went through a number of iterations and I'd say the sound design is pretty good, and iirc they're from freesound under cc0 or something like that so if you wanted you could probably just use the same ones.

it'd be great to see some/all of this move over, though, because it's not exactly the most efficient thing when you try to get audio from a VSCode extension. There's no real way to do that without hacks that we could find. We were going to eventually port the sound to a Rust subprocess, but maybe that's unnecessary because it sounds like VSCode itself is going to be catching up.

The ability to arrow through the line and have error/warning sounds when your cursor enters the actual error/warning is somewhat useful, so is getting feedback as you type. I'd consider doing those as well, but it's definitely the lowest priority thing.

CC @wiresong so that they have visibility wr.t. if they get back around to this and start doing a bunch of stuff that we don't need to do.

I'll provide actual feedback later. Only just updated, and didn't even know this was on the roadmap. Trying to get it on the roadmap is something we kept saying we'd do one of these days.

@isidorn
Copy link
Contributor Author

isidorn commented Feb 18, 2022

@ahicks92 thanks a lot for the feedback. I was not aware of that extension - cool stuff!
Anyways looking forward to more feedback from you once you try out what we have done. Make sure to use VS Code insiders since it has the latest changes. Thanks

@ahicks92
Copy link

Yeah. He never really promoted it. Formatting is one of those weird problems where everyone hates it but no one considers this a solution: give it to users and they want it, but until you do they don't realize it could become a thing. Eventually I got work to do a bunch of ugly things with clang-format and some bash post-processing, but before that I was dealing with about a year and a half of manually formatting C to the BSD style because apparently no one supports that fully (or at least, not for our case).

I'll make a point of getting back w.r.t. feedback in the next week or two. My bandwidth is at zero at the moment, didn't have a chance.

before the above add-on (and as a "there is a need" datapoint) I was using this which is a lesser version of Sonica that only does "this line is too long" (the other features aren't audio).

@hediet
Copy link
Member

hediet commented Feb 21, 2022

There are now these new audio cues:

  • inline suggestions (uses the sound for quick fixes)
  • warnings (uses the sound for errors)

Waiting for more sounds.

@hediet hediet modified the milestones: February 2022, March 2022 Feb 22, 2022
@steverep
Copy link

steverep commented Mar 5, 2022

Why did the folding sound change in 1.65? I was a fan of the old one and I find the new one barely audible.

@ahicks92
Copy link

ahicks92 commented Mar 6, 2022

Warnings should really be different than errors. Referring to the UX and not making a statement on priorities, errors must be fixed now, but warnings can be left, and are even sometimes false positives. I also like the shorter sounds that Sonica went with. Not those specific sounds, just the general concept. It feels "snappier" for lack of a better way to put it, though we kind of got the warning/error sound design wrong by making the warning sound "scarier" than the error one (this is what happens when it's a weekend project and "we can't even play audio because..." hacks are the first concern). My screen reader is something like 5 times faster than the sound...not in terms of like latency, just this sort of ephemeral quality I don't know that I could explain well to someone sighted. I guess something like "by the time it's done I'm way over there"?

I have yet to trigger any sound but warning/error despite being on insiders.

Do we need more sound designers? is that the blocker? Small chance I can find people. I'd love to see sounds rolled out across the ui as widely as possible frankly. And my feedback w.r.t. really needing at least rulers if I'm going to move off Sonica definitely still stands; there is literally no efficient non-audio replacement for that UX.

@zersiax
Copy link

zersiax commented Mar 6, 2022

agreed re: the error vs warning distinction, they arent the same thing and will be dealt with in different ways, so we should have different sounds for them to eliminate ambiguity.
@ahicks92 What exactly is Sonica? You mention it a number of times and link to the NVDA Addon for Notepad++ which you say is a lesser version of it, but I can't seem to find the "greater" version of it to compare against.

@ahicks92
Copy link

ahicks92 commented Mar 6, 2022

I linked to it above in the comment that mentioned it first as an inline markdown link. But here it is again: https://github.com/wiresong/sonica

You'll want to tweak the settings some, and it's not going to do panning and such unless you've configured rulers. Just search settings for sonica. We never really finished it: @wiresong was doing it for me and got it as far as I needed for work and then ran out of time, and I never had time for it to begin with or I'd not have paid someone plus it did what I needed to get off Notepad++. So it's rough around the edges. If it gets breaky alt-tab out and back in, and don't close the random webview editor because that's the audio-playing hack we came up with.

@hediet
Copy link
Member

hediet commented Mar 7, 2022

Why did the folding sound change in 1.65?

See here for the discussion: #142016

I have yet to trigger any sound but warning/error despite being on insiders.

Is this a bug?
There should be audio cues for inline suggestions if you have copilot installed, for folded regions and for breakpoints on the current line / when a breakpoint is hit.

@isidorn
Copy link
Contributor Author

isidorn commented Mar 7, 2022

Also we use a different sound for warnings and a different one for errors.

@ahicks92
Copy link

ahicks92 commented Mar 7, 2022

@hediet
Maybe I'm just not using the right features. I'll try to find time to go out of my way for that in a while.

@isidorn
haven't observed that yet, but that may be an artifact of only having errors and/or outdated insiders. Will check into it.

@hediet hediet modified the milestones: March 2022, April 2022 Mar 18, 2022
@isidorn
Copy link
Contributor Author

isidorn commented Apr 14, 2022

We added the sounds for inline completions and warnings.
For wrapped lines we believe we should solve this with another approach #95428 (comment)
Quick Fixes there was not so much user excitement. Thus closing this issue as no action planned here.

@isidorn isidorn closed this as completed Apr 14, 2022
@isidorn isidorn removed the feature-request Request for new features or functionality label Apr 14, 2022
@github-actions github-actions bot locked and limited conversation to collaborators May 29, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues
Projects
None yet
Development

No branches or pull requests