PeterPanettone 157 Posted June 1, 2020 Until Delphi 10.3, Search Declaration (e.g. CTRL-click on an identifier) in many cases did not work at all. Now it seems to work flawlessly. - Good work, Embarcadero! 3 1 Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 Nope, not true. It completely fails when the identifier or type in is in another (referenced) project in the same project group. Makes working on a large project quite painful. 1 Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 (edited) 4 hours ago, Vincent Parrett said: It completely fails Have you already filed a REPRODUCIBLE Quality Report, so we can vote for it? Edited June 2, 2020 by PeterPanettone Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 https://quality.embarcadero.com/browse/RSP-28457 - opened on the 8th May.. read into that what you will. Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 57 minutes ago, Vincent Parrett said: https://quality.embarcadero.com/browse/RSP-28457 - opened on the 8th May.. read into that what you will. A reproducible example would be fine. 1 Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 1 hour ago, Vincent Parrett said: https://quality.embarcadero.com/browse/RSP-28457 You wrote there: "Ctrl+click on a unit name (from another package) in the uses clause of a unit." Try this: Place the caret on that unit name in the uses clause and then press CTRL+RETURN/ENTER. This should open that unit in the Code Editor. Does this solve your problem? Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 I've already been over this with embarcadero people privately (look at the date, here's a clue, it's before the release date) and provided lsp logs etc. Ctrl+enter opens the file open dialog. So does right clicking and selecting Open file at cursor. So for me, 10.4 has completely broken code navigation... which makes it painfully slow to work in. To reproduce, create a project group with a package project, and an exe (that uses runtime packages) and references the package project. In a unit in the exe, add a unit from the package in your uses clause, then try ctr+click. My project as 100+ packages and a few exe projects.. it's not easy to work on with broken navigation. Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 1 hour ago, Vincent Parrett said: broken navigation I wonder whether any IDE plugin would be able to replace and add NAVIGATION features in the IDE at the Tools API level. Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 1 hour ago, Vincent Parrett said: So for me, 10.4 has completely broken code navigation.. Does this apply generally to the Search-For-Declaration feature or only in this special case with that project-group? Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 3 hours ago, PeterPanettone said: I wonder whether any IDE plugin would be able to replace and add NAVIGATION features in the IDE at the Tools API level. Yes it could, but it would need to parse all the code.. which would reintroduce the overhead that the LSP is supposed to remove (high memory usage). Writing a complete, fast, memory efficient parser for the purposes of navigation is no trivial task. Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 3 hours ago, PeterPanettone said: Does this apply generally to the Search-For-Declaration feature or only in this special case with that project-group? It works most of the time inside a single unit or even a single project. I wouldn't call a project group a special case though, anyone who works on a non trivial project would be using them. Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 5 minutes ago, Vincent Parrett said: Yes it could, but it would need to parse all the code.. which would reintroduce the overhead that the LSP is supposed to remove (high memory usage). I see it is a zero-sum game. In fact, Code Navigation using different abstraction levels could be much improved in Delphi. Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 1 minute ago, PeterPanettone said: In fact, Code Navigation using different abstraction levels could be much improved in Delphi. There's no doubt about that. I use VS a lot, and with CodeRush installed and navigating code is leaps and bounds ahead of delphi. Share this post Link to post
PeterPanettone 157 Posted June 2, 2020 11 minutes ago, Vincent Parrett said: CodeRush installed and navigating code is leaps and bounds ahead of delphi. I would love CodeRush for Delphi. Share this post Link to post
Esteban Pacheco 16 Posted June 2, 2020 CodeRush is leaps and bounds behind Resharper. Rider is the pinnacle of how an IDE should be. Hopefully Delphi's IDE will be on that direction now that the plumbing is in place (LSP, automatic IDE updater). 1 Share this post Link to post
Vincent Parrett 750 Posted June 2, 2020 6 hours ago, Esteban Pacheco said: CodeRush is leaps and bounds behind Resharper. Unfortunately Resharper is a resource hog, and really slows down the IDE. 6 hours ago, Esteban Pacheco said: Rider is the pinnacle of how an IDE should be. I have not used Rider, but have used some of their other IDE's and found them quite strange to work in. 6 hours ago, Esteban Pacheco said: Hopefully Delphi's IDE will be on that direction now that the plumbing is in place (LSP, automatic IDE updater). We live in hope! Share this post Link to post