microsoft / vscode

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

Create an option to position the intellisense parameter info top or bottom. #33752

Open rhyek opened 7 years ago

rhyek commented 7 years ago

Currently the parameter info tooltip is always placed above the cursor. This is often quite annoying since it completely blocks code in the above lines and you sometimes need to look at your context to know what values to give the parameters.

Example: image

yume-chan commented 7 years ago

In Visual Studio, hold Ctrl for a while, the tooltip will dim down to let me see through it.

I think it's better than changing the position via a config.

rhyek commented 7 years ago

Thanks. I never need it to be above the cursor. Pressing ctrl every time sounds unnecessary.

rhyek commented 7 years ago

I seriously have to hit Esc every time this tooltip pops up. It is probably the most annoying thing to me about VSC.

Do you know if there is a way a plugin could fix this?

joaomoreno commented 7 years ago

The problem with positioning it down is what happens to Intellisense? Should it then go up?

The Ctrl idea is something that we've brought up every now and then, we should just implement it.

@rhyek Most people how are annoyed by it simply disable it.

rhyek commented 7 years ago

I have never seen an instance where both tool tips are shown at the same time. Once you pick a method from intellisense, it is hidden and parameter info appears.

On Sep 22, 2017 4:17 AM, "João Moreno" notifications@github.com wrote:

The problem with positioning it down is what happens to Intellisense? Should it then go up?

The Ctrl idea is something that we've brought up every now and then, we should just implement it.

@rhyek https://github.com/rhyek Most people how are annoyed by it simply disable it.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Microsoft/vscode/issues/33752#issuecomment-331409095, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq5yryjXGI6krrtllRWSogjqHsXt06Wks5sk4ksgaJpZM4PLPTK .

joaomoreno commented 7 years ago

When parameter hints is open, simply trigger Ctrl Space.

vscodebot[bot] commented 7 years ago

This issue has been closed automatically because it needs more information and has not had recent activity. Please refer to our guidelines for filing issues. Thank you for your contributions.

rhyek commented 7 years ago

Seriously?

On Oct 2, 2017 1:52 AM, "vscodebot[bot]" notifications@github.com wrote:

Closed #33752 https://github.com/Microsoft/vscode/issues/33752.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Microsoft/vscode/issues/33752#event-1273534665, or mute the thread https://github.com/notifications/unsubscribe-auth/AAq5ylAgUCpPbqYYPVunkcQHfw2xz3sWks5soJYfgaJpZM4PLPTK .

rhyek commented 7 years ago

Can this please be re opened? It had activity 7 days ago and I'm not sure what additional information is needed. Probably just and over eager configuration on the bot.

joaomoreno commented 7 years ago

The issue was closed because you didn't reply to my last message:

When parameter hints is open, simply trigger Ctrl Space.

You also didn't address my point about disabling. Why don't you simply disable parameter hints?

Ultimately, you can imagine the solution isn't as simple as changing the positioning; no matter where it will be positioned, it will overlay text. You happen to give more importance to the text above the cursor; others to the text below it. And text isn't even the biggest problem. It's other widgets, as I already mentioned above.

rhyek commented 7 years ago

@joaomoreno, sorry. I addressed the ctrl suggestion earlier.

You also didn't address my point about disabling. Why don't you simply disable parameter hints?

I don't want to disable them, because they are useful to me sometimes.

no matter where it will be positioned, it will overlay text. You happen to give more importance to the text above the cursor; others to the text below it.

Yes, but the IntelliSense tooltip shows below the cursor by default and this is very common among code editors and IDEs with code hinting capabilities. Why should the parameter info tooltip be different?

I am asking for an OPTION to modify its placement, not to place it below for everyone.

The reason for my preferring the tooltip to be below is:

rhyek commented 7 years ago

In the image I gave as an example, the tooltip completely covers up three previous lines of code. It often feels like I'm writing code blind when this happens.

chriseppstein commented 7 years ago

As I suggested in issue #35596, other possible UI solutions exist other than anchored to the text.

Other possible config options or solutions might be to have the pop up displayed in a fixed location when triggered by typing (E.g. the upper right corner of the editor window) because sometimes I need to refer to the code below as well :)

or you could even imagine a documentation pane that can display contextual documentation without any overlay at all, such a thing could take precedence vs the overlay, if open.

cantiero commented 6 years ago

This is also an issue for me. My impression is:

1) I don't need to see parameter hints all the time. (Does anyone do?) 2) If showing all the time, anywhere you show will be invasive and distracting. (Unless you put in the footer of the editor, maybe?) 3) Why not just allow users to disable them and have a keyboard shortcut to show a hint only when needed? In that case, it wont matter if it is above or bellow.

jprichardson commented 6 years ago

This is an issue for me. Just recently started experimenting with VSCode from Atom. While I really enjoy using VSCode, this annoys the heck out of me as it covers all the code above and doesn't feel consistent with the method intellisense. I'd love to see an option to place this below the current line. Thanks for your hard work!

pillaiindu commented 6 years ago

I filed similar issue some days ago, @ramya-rao-a sent me this link, so I'm linking my issue also here. https://github.com/Microsoft/vscode/issues/42937

@rhyek , actually this should be configurable, so if someone needs it above, s/he will leave it untouched, and people like us who need it below will configure it to go below.

JobLeonard commented 6 years ago

Would it be possible to make the pop-up to avoid the mouse cursor? Or have the preview dismissed on a click?

I understand why that might not be the default behaviour, as it would break the ability to scroll through larger previews, and in some cases select text inside of it:

hover-scroll2

hover-scroll

Although I think having a preview that big is a bug anyway - opened #44928 for that.

By the way, is that text selection a feature or a bug? I guess one preview comes from type inference, the other from JSdoc, but the behaviour and styling is inconsistent between them.

If the ability to select text in the type-inferred pop-up isn't a feature, then perhaps clicking could dismiss/move the pop-up? Currently clicking does nothing with type annotation previews, which actually is a little frustrating. Either make it select the text or dismiss it, but at least give it a purpose.

hover-cursor

cparadeise commented 6 years ago

TLDR; +1

I absolutely support these ideas for improving intellisense. I have recently switched from Brackets to Atom to VSCode, and I love VSCode for it's amazing built in intellisense. But it does start to feel a lot like the old MS Word CLIPPIE. Sorry if I triggered some haunting memories of past.

This is kind of like the Chrome DevTools window (stretching the comparison ever so slightly). By default it opens within the same window, effectively crushing your browser view with all the information provided. But, you have the option to pop out the window into it's own. The only problem I have with this is when I am switching between many open windows, if the DevTools window would be able to be focused the same time as the browser window, I would be so happy. If certain tools in VSCode could pop out, in a manageable, clean way, I would use it for sure. I also like the idea of using the mouse click to drag the window.

I'm still a young developer, hopefully, I can contribute more soon to the actual development of these tools.

marcomorain commented 6 years ago

When the tooltip appears on top of the code it's really jarring. I would love to see it places in a better location.

image tooltip

kespindler commented 6 years ago

Love the idea of having this in a documentation pane instead of inline. I'm encountering this issue and a doc pane seems to make the most sense.

aviau commented 6 years ago

Yes, brilliant! Please make a documentation pane option. I would let it enabled all the time and it wouldn't annoy me at all. I love hints but they are so annoying if they overlay text.

I have created a new issue for this idea here: https://github.com/Microsoft/vscode/issues/51253

tomboland commented 6 years ago

I honestly think that the only thing that's so frustrating about the current positioning is that, a lot of the time, I want to refer to the line above the one I'm typing on. What I've noticed about the other code-editor I use, Oni, is that the positioning of the parameter-list popup and the like is just higher by that one extra line, which is a subtle, and at the same time huge difference!

rhyek commented 6 years ago

@tomboland I really like that idea. Not sure if it is the best solution, but it makes sense.

nate-datafinch commented 6 years ago

+1 to moving this anywhere other than directly above the current line. It's a bad design choice. Working with any decently documented library means this thing eats up 8 or 9 lines of code above the current line.

We've known for a long time that temporal and spatial locality are a thing. I want to reference nearby lines, and lines that I've edited recently (which are usually nearby, and most often right above the current line). Don't freaking hide those from me.

It's incredibly jarring. Honestly, the lines above the current code are almost always more valuable than the hint. Until this is changed I have this feature completely disabled. Which is a shame, because it's a very cool feature, the positioning just sucks.

SnugglyCoder commented 6 years ago

+1 to have an option to set it to be below current line instead of on top of current line. It is very annoying as current lines reference lines before and them being covered up is very annoying.

DaveCousineau commented 6 years ago

If you're in a method or function, the entire meaning of what you're typing is 100% dependent on the code ABOVE the cursor, not the code below it. Very rarely is the code beneath the current line relevant to that line, but the code above it almost always is.

rhyek commented 6 years ago

We could also have the tooltip and intellisense stack below the cursor.

mxmzb commented 6 years ago

i could also imagine to have to suggestions always popup on one fixed position (e.g. bottom right corner of the window) as opposed to following the current cursor position in any way.

sinesc commented 6 years ago

Doesn't have to be too complicated: Top right editor corner if that's where the cursor is not, otherwise bottom right corner. Should apply to everything that opens in the editor and hides content below. Options for both the default position and the fallback position would be a nice bonus.

axe-z commented 5 years ago

I mean how is that not fixed !! Atom does it right . This is beyond ridiculous.

capture d ecran le 2018-11-11 a 10 36 11

kingpalethe commented 5 years ago

Same issue here. Need to find a way to move the hint below the current line.

P0pzi commented 5 years ago

+1 SO ANNOYING.

Trying to referance the previous line 99% of the time, cockblocked by it constantly.

PLEASE add the option to move it below the cursor, aka where it should be.

samson-sham commented 5 years ago

+1 Not only parameter hints covers the code, it also caught my arrows keys, this is a huge problem.

Can someone make a shortcut for parameter hint such that we can opt-in to make it show, instead of just enable/disable?

icyJoseph commented 5 years ago

+1 As a way out, perhaps it could have some opacity? so that we can read through. I mean, if positioning it under the cursor is so hard.

FeliveNdrell commented 5 years ago

This is an issue for me too. Option to customize tooltip default position would be really nice.

NickWoodward commented 5 years ago

+1

How is this still a thing?

drewlustro commented 5 years ago

Please allow us to offset the tooltip with CSS. Some minor relative positioning edits could do it.

polidore commented 5 years ago

+1

tomboland commented 5 years ago

I took the survey and pretty much begged for this to be the one thing they fix!

pumpkinlink commented 5 years ago

+1

willtalmadge commented 5 years ago

Can we do what spacemacs+typescript layer does? They just put all the tips into a minibuf at the bottom of the screen. It collapses completely if there's no info. I'd love this so much, even if we had to install an add-on to get the feature.

Screen Shot 2019-07-16 at 2 04 26 PM
eacartwright commented 5 years ago

hey you microsoft tell me you're working on this

xproofx commented 5 years ago

I really can't deal with this level of bullshit. Fuck you Visual Studio Code. Let me disable this altogether.

polidore commented 5 years ago

ask for a refund.

On Thu, Aug 22, 2019 at 10:14 AM xproofx notifications@github.com wrote:

I really can't deal with this level of bullshit. Fuck you Visual Studio Code. Let me disable this altogether.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode/issues/33752?email_source=notifications&email_token=AABFS4LBECURF7DEWJ4GRY3QF2UONA5CNFSM4DZM6TFKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD45NGRY#issuecomment-523948871, or mute the thread https://github.com/notifications/unsubscribe-auth/AABFS4OICD2ODOYERCASELTQF2UONANCNFSM4DZM6TFA .

ghost commented 5 years ago

I seriously have to hit Esc every time this tooltip pops up. It is probably the most annoying thing to me about VSC.

Do you know if there is a way a plugin could fix this?

Yes, change to Atom Editor hahaha.

Gomaya19 commented 5 years ago

If you scroll down so the line of code you're typing is at the very top, the tooltip does appear under it, but of course you now can't see the line above as it off the screen. We just need a "show the godamn tooltip below the line all the time" tickbox/boolean. MonoDevelop used to do this brilliantly years ago.

chevcast commented 5 years ago

This is also my one complaint with VS Code currently. I love the suggestion of just offsetting it upward by one line. That would help tremendously. Why we can't have options around this tooltip is a mystery to me.

norb-c commented 5 years ago

Any solution yet??

Gomaya19 commented 5 years ago

Two years and still not fixed. I've uninstalled vscode and moved to Geany IDE which DOES this already, but to be fair, so does Sublime, Atom, MonoDevelop and more. screenshot from Geany IDE displaying parameter list BELOW where I'm typing <- see, it's really easy to do.

buggymcbugfix commented 5 years ago

Anything happening on this front?