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
Code Explorer - Option to have module show up in multiple places (Feature request) #4477
Comments
Have you seen the Battleship project? It illustrates this pretty well. There is no "One True Way" of doing this, and that's something you tend to get better at with experience, but despite VBA's lack of namespaces, I find organizing project files exactly as I would in a .net project feels very natural. See the source code for this very project right here: over 200K lines of code in Gosh-I-don't-know how many files, across 20 projects, and yet everything has its makes-some-minimal-sense place. I don't think supporting multiple folder annotations is sensible; seems confusing, and internally it has implications that make it rather complicated to handle. Curious about the 3rd bullet though, can you expand a bit on how the search/filter functionality can be enhanced? Very open to the idea! |
I haven't seen the Battleship project in detail.... I find I just like to impose a lot of grouping when I have repetition (which obviously try and avoid but like in the form resizing example, there can be reasons/cases where one needs a form specific implementation and I try to keep the actual forms as lightweight as possible). Re: bullet 3 and search, just a simple textbox with ability to type e.g. "I_*" and then list in the explorer is limited to modules whose name starts with "I_" (e.g. my interfaces), or "GreatestFormEver" and then list would be restricted to classes with names associating them with the specific form. Would want it to have a degree of persistence (e.g. filter remains in place as one navigates and makes changes to code), and even better would be having drop-down functionality (like the search-and-replace functionality within the VBE) to recall previous just searched terms.... It is also entirely possible that there is a ?new? feature that has recently been added (your use of 'enhanced' has me double checking around the code explorer UI as I don't remember seeing any search/filter functionality...) I'm using 2.2.0.3835 (from about....) |
I'm not sure which version this is in, but there should be a search bar at the top of the code explorer, where if you type "I_" (without the quotes), it will filter to all items that contain "I_" in the name (including parent folders). It should be between the folder view and the toolbar. It will retain that filter, and recently got a bugfix/enhancement to keep the filter across parses. |
Blind.... I am going blind..... completely saw it as whitespace.... and only @Hosch250 's comment (thank you!) has made me pick up on the standard magnifying glass search icon over on the far right..... This is what I was thinking of with that third bullet point..... One immediate question is whether the filtering results should be affected by the "fx" (toggle signatures) state.... search results for e.g. "I_" seem to be also including modules where the search term is found within the signatures. I (think) I am (at times) only interested in restricting the filtering to the actual module names - is linking the result list to the "fx" button state a reasonable feature request? |
We were actually just discussing the discoverability of this in chat. We are planning on putting a gray "search" placeholder text in that box. Your feature request seems reasonable to me; it was literally brought up as a feature point when we first implemented this, but decided to wait until someone else requested the feature. It would make a good setting, I think. |
I think I actually like that idea. 👍 |
I'd say we hijack this issue into being about the discoverability of search. As @retailcoder elaborates above, multiple Folders are something of a more complex beast. I personally don't think that Rubberduck should provide the option for multiple folder annotations, though I can understand why it would be useful... |
It does make me wonder though - could / should we have a feature to annotate (modules, or perhaps any member?) with arbitrary tags? We could then enhance the search bar with a tags mode to do incremental tag filtering. |
Per chat, I'll open a fresh issue for tags |
In large applications I often find myself wanting multiple types of groupings of my modules. E.g. view only interfaces, view only classes supporting/associated with a specific form (as identified through a naming convention).
Given the existing folder annotations functionality, I'm wondering whether it would be possible to do one or more of the following:
Would also be interested in hearing how others organize class modules when start reaching 30+ modules in a project...
Thanks!
The text was updated successfully, but these errors were encountered: