Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Feature Requests
 incrementally searchable navigation history
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

slymz
Junior Member

USA
18 Posts

Posted - May 08 2021 :  07:50:46 AM  Show Profile  Reply with Quote
Sometimes, in a long code-browsing and discovery session, going back and forth with Alt+Left (VAssistX.NavigateBack) and Alt+Right becomes very tedious and involves quite a bit of seeking around to get back to where one was, esp chains of jumping around via Alt+G (VAssistX.GotoImplementation) and Alt+O etc..

A drop down list of navigation history, that keeps track of and shows File/Line/Context, and that is incrementally searchable -- kind of like the List Methods in File drop down or other VA boxes -- would be tremendously useful.

Edited by - slymz on May 09 2021 8:58:08 PM

feline
Whole Tomato Software

United Kingdom
19039 Posts

Posted - May 10 2021 :  07:38:29 AM  Show Profile  Reply with Quote
Are you aware of the Most Recently Used list in the top portion of VA View?

https://docs.wholetomato.com/default.asp?W222#mru

The other thread you commented in: https://forums.wholetomato.com/forum/topic.asp?TOPIC_ID=17949

is asking for easy access to this list, along with the search you are mentioning. This seems to be what you are looking for:

case=18422

you can right click into the Most Recently Used list to control which items VA lists here. By the sounds of it, limiting this list to "Include modified methods" only would work well for you.

VA Hashtags can also help, if there are certain key areas you are editing, and want to jump back to, especially since the VA Hashtags window is already searchable:

https://docs.wholetomato.com/default.asp?W574

zen is the art of being at one with the two'ness
Go to Top of Page

slymz
Junior Member

USA
18 Posts

Posted - May 10 2021 :  9:41:44 PM  Show Profile  Reply with Quote
Yes, thanks Feline. Indeed, we touched on this as an offshoot from that other thread. But I just wanted to revisit this as a separate enhancement, specifically referring to the Navigation History. In that other thread I was referring to a more ambiguous, perhaps unnecessarily complicated inverse goto behavior. And VA View, albeit being useful in other subtle ways, is oddly not addressing this use case.


quote:
By the sounds of it, limiting this list to "Include modified methods" only would work well for you.


Somewhat opposite of this was true in this case: navigation history itself is built just by browsing around without even changing a single line of code, and it would interesting to "look back and jump" to specific points in it.


About VA View:

quote:
(case=18422) is asking for easy access to this list, along with the search you are mentioning.


which in on itself would be a much welcome feature, although that does not address the pain point with navigation.

More specifically, VA View is not quite the same as navigation history, and in fact, is confusing if taken as such. Let's take an example


Check all of the following on VA View

1. Opened files
2. Modified files
3. Modified methods

and with VA View showing the last visited entity always first, let's browse the following code:



// File: foo.cpp
void foo1() {
   bar1();
//   ^ cursor starts here
}
void foo2() {
   bar2();
}

-------

// File: bar.cpp
void bar1() {
   bar2();
   foo1();
}
void bar2() {
   foo2();
}


Start with VA View cleared, and carry on the following operations. {}s will depict the content of VA View in order when all three options are checked:

0. {}
1. Put the cursor inside foo1()'s body as shown. {foo.cpp}
2. Bring cursor to bar1 statement, hit Alt+G {bar.cpp, foo.cpp}
3. (we are at bar1() definition) Bring cursor to bar2() with down arrow (these up/down/left/right motions aren't tracked by navigation history, which is a good thing). Now Alt+G to jump to its definition. {bar.cpp, foo.cpp} [NO CHANGE!]
4. Bring cursor to foo2(), Alt+G {foo.cpp, bar.cpp} [SWAP!]
5. Modify foo2() {foo2(), foo.cpp, bar.cpp} [MIX!]
6. Alt+left to go back to bar2() {bar.cpp, foo2(), foo.cpp} [LAST BECAME FIRST]
7. Repeat browse/edit with other tools like Alt+O, Find references, etc. [..]

In other words, VA View is not reflecting the "browsing history" very well. In fact, if it is taken as a browsing history, it gets confusing. It still contains useful information, especially Modified Methods, but this does not cut it for all use cases.

On the other hand, Alt+Left and Alt+Right are clearly working thru some browsing history that is deterministic and very intuitive. It is exactly like an internet browsing history, and linear with Back and Forward. The enhancement here would be exposing that history in a searchable dialog, along with all the relevant context: filename, the piece of code context around the cursor, and the scope.

This thread is simply because I had noticed this need recurringly: I fully rely on VA's blazing fast and accurate Alt+G and Alt+O and so on features, but to get to where I were I am hitting a series of Alt+Lefts to go back (and a couple of Alt+Rights if I overshot). It would be tremendously useful if I could just "type a few letters to narrow down that list, visually select, and jump"..

Edited by - slymz on May 12 2021 1:16:20 PM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19039 Posts

Posted - May 11 2021 :  08:32:53 AM  Show Profile  Reply with Quote
I see now, and you are right, this is different, and VA View isn't actually going to help at all here. I think the only "simple" solution that will help here is IDE bookmarks.

Now I understand what you are looking for, this does make sense, I have put in a feature request for this:

case=145695

to see what our developers make of this.

zen is the art of being at one with the two'ness
Go to Top of Page

slymz
Junior Member

USA
18 Posts

Posted - May 11 2021 :  12:32:45 PM  Show Profile  Reply with Quote
IDE Bookmarks! What a brilliant digression again! Bookmarks list is obviously different than navigation history, but had the Bookmarks themselves were listed in one of those wonderful incrementally searchable VA windows, rather than the current boring static list, it would make them infinitely more useful!

Edited by - slymz on May 11 2021 12:33:30 PM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19039 Posts

Posted - May 12 2021 :  09:15:02 AM  Show Profile  Reply with Quote
Now you say it, yes, I agree, having bookmarks more accessible like this would be very helpful. I have added this idea to the feature request, to see what our developers make of it. It also depends on how accessible the IDE makes the bookmark information.

zen is the art of being at one with the two'ness
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000