microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
163.43k stars 28.95k forks source link

Ability to disable diagnostics etc. from certain sources #192189

Open RoyalFoxy opened 1 year ago

RoyalFoxy commented 1 year ago

I personally have the issue that I have multiple sources point out the same error. A good example is a vue project in which I had 6 sources tell me a similar error.

image

The feature I'd like to be implemented would allow the user to disable certain sources. Yes some extensions allow to disable their intellisense or other stuff but I don't want to chase after each and every extension and request a feature which could be implemented in vscode itself. It's not only about extensions tho, the ts server built into vscode also reports these and I, like many others, use the Pretty Typescript errors which makes the errors from the language server useless and also annoying if the error is big.

jrieken commented 1 year ago

Yes some extensions allow to disable their intellisense or other stuff but I don't want to chase after each and every extension and request a feature which could be implemented in vscode itself

Understood but it's the overall best way to doing this because otherwise CPU cycles are wasted for computing diagnostics that are then hidden/ignored. It's hard to achieve properly because diagnostics are pushed into the editor, not pulled for.

RoyalFoxy commented 1 year ago

The only problem with the example I gave tho is that two of the diagnostics (the types) don't show their source so it's hard to track down from where they actually come. Another problem is that the built in typescript language server only allows to be disabled fully but not to disable diagnostics.

I actually just came up with a better solution than removing diagnostics which would be to be able to order them so that the pretty typescript errors would appear at the top. I think this could be easily done by a list inside the settings which basically chooses the ones higher in the list first and if they aren't in the list at all they get pushed down to the bottom or something along those lines. I don't know the current state of the ordering process so I can't estimate if this idea is any good for implementing...