-
-
Notifications
You must be signed in to change notification settings - Fork 69
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
Show parameters and completion suggestions rarely do anything these days #277
Comments
Just tried a couple of "Show parameter list" in the dmd and visuald source code, they looked pretty good. I suspect that you are working more on templated code which makes evaluation a lot more difficult, especially in the definition itself (IIRC this uses the semantic analysis of its first template instantiation it can find). Is that the case? BTW: Visual D uses the dmd frontend for its semantic analysis since about 2020, maybe you remember the previous engine. You can still switch back to it by unchecking "use dmd parsing engine" in the D intellisense options, but it has fallen way behind and no guarantees it still works at all.
The debug version logs the communication between Visual D and the dmdserver process, but it can get really slow. Maybe I could add an option to enable this in a production build, too. |
Umm, I'll pay closer attention to the specific bits of code where I experience toubles, but It's actually one of the least templated things I've ever written. It's mostly just classes.
Yeah, it may be that I just never had heaps of experience with the DMD frontend engine, and so the 'feel' of the experience is distinctly different than my last 10 years has been... it just overall feels so much less stable and solid than it was for the later few years around 2015-2020 when I was particularly active.
That comms logging option sounds like a really good idea; I might get a reasonable idea what's the problem then and offer more actionable bug reports. |
https://github.com/dlang/visuald/releases/tag/v1.4.0-rc3 has some improvements for the completion, though not much regarding the speed of operation. To get a log of the communication between Visual D and dmdserver, just create a folder %TEMP%\dmdserver and each instance of dmdserver will create a unique log file. Maybe it can hint at what Visual D is waiting for. |
I'm on VS 17.9.3, the latest VisualD RC.
I've raised issues with functionality regressions before, but since a few years ago when I was using VisualD every day, there seems to have been severe regressions all over.
My bugbear for today; the show-parameters feature almost never appears when I press ctrl-shift-space, so when typing a function call and the open paren, I can't see what args the function accepts like usual.
Likewise, the completion popup almost never appears when I press ctrl-space, and most of the time when it does, it shows an overpopulated list of global symbols, and never seems to be applicable to the scope it's acting on. Occasionally it show the right thing, but I can't understand what conditions change this behaviour. It means when you half-type a member and the completion is unambiguous, it just does nothing and you have to continue typing the whole thing.
Goto definition is working better than it was last time I complained about it, but it's still in a state where it only sometimes works.
How can I better understand what's going on here? Is there a log stream which emits complaints so I can understand why it's failing most of the time? I don't know how to report the issues, because it's just so comprehensively and unpredictably not working, and I can't isolate simple test cases. What can you suggest to get better bug reports?
The text was updated successfully, but these errors were encountered: