-
Notifications
You must be signed in to change notification settings - Fork 29.4k
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
Feature request: symbols tree view #5605
Comments
Ideally, it would expose API this for extension authors. |
Thanks Dirk. Yes, I saw that already, but I find it less of an interruption when that view is constantly onscreen in a separate panel. Also, the ability to filter this list so as e.g. not to include variables is useful - which is harder to do in a pop-down view. |
@dbaeumer Sometimes, this seems to cut off unnecessarily early, see here: Thinking about it, I probably even like the current approach better, need to get used to it a little, but it is faster to use compared with traditional outline presentation. |
@bgse known issue. I opened a issue in the TS repository for this. |
Had a request for this for Dart Code. Am I right in assuming we can't implement this (even ourselves) and would need support from Code? |
Not sure TBH. I'm still interested in it, but my |
@DanTup you mean a tree view. Yes. this would need support from the Workbench. Filling the Ctrl+Shift+O flat list is API. |
@dbaeumer Yeah, I meant the tree - we're already providing the document symbols for the flat list. Thanks for confirming! |
As I mentioned in #10788 , the "symbols tree view" could be made a LOT more powerful than in atom. In my humble opinion, Eclipse got that aspect of the UI absolutely right. Here's a screenshot of the outline view displayed by Eclipse for a Java file: There are several things worth mentioning here:
I think that this particular feature is brilliantly done in Eclipse, and I would love to see it realized in VScode for Typescript in particular. When I navigate through code in Eclipse and search for something, it's usually just a sequence of "open type -> check outline". You don't even have to look at the source code for navigation, which makes it very fast, elegant and "brain friendly". |
If you do add support for a tree; could you also consider allowing it to be used for type hierarchy too? Had that request too, but current ideas (eg. using quick pick) kinda suck: Dart-Code/Dart-Code#133 |
Having a Object Viewer / Structure Inspector / Class Hierarchy tree would be a great improvement for user experience and code navigation. I asked for it in #397 and then again in #6376 to no avail. Last time I looked at the APIs there was no way to interact with Side & View Bar in order to create it --R |
@MartinHaeusler is right. You should focus and working on this feature as in Eclipse. It would definitely one of your killing feature to stand against Atom / Sublime. |
VOTE |
+1 |
In case that there was any doubt after my post: +1. |
+1 |
Is this being looked at? For me, this would be really important. |
+1 |
1 similar comment
+1 |
Hi all, prefer 👍 reactions on the original issue comment as that helps us with prioritization. If you're on a mobile device you can use reactions by first hitting the "Desktop version" button at the bottom of the page. |
Actually I prefer something like "go to anything" where you type something (can be a symbol, a file or any command) and it aggregates all results in a single place. Just like IntelliJ's tapping |
FYI, the latest release (0.2.0) of https://marketplace.visualstudio.com/items?itemName=patrys.vscode-code-outline does a great job with this now. It doesn't implement everything in the screenshots above but I find it quite usable. I'm using with golang, I guess YMMV. |
The extension works great, but the fact that it can't be moved to the rigth column is an immediate no go for me (and probably most people). |
One option though is to move the entire Workbench to the right like so: Which is probably a good idea regardless if your first language reads L->R as then the brain naturally reads that way and thus your most important stuff (your code!) is first thing on the left side of the screen. It takes getting used to just because it's a change though. |
Tried vscode-code-outline: Not bad at all! |
Tried 'patrys.vscode-code-outline'. Didn't work for me at all. Always shows empty box (tried refresh, re-install etc). That, and also, I wanted to see it on the right. It is very disturbing to see where it shows up now. |
Hopefully being implemented this month. It's a planned item! #49327 |
patrys.vscode-code-outline worked great for me, but for about a week now it has disappeared and no matter what I do, I can't seem to get it back... |
@Brent-Knigge It now has a separate panel. On the left you should see a new icon below which is for the code-outline view. |
@faintsignal thanks. I see it plain as day now - don't know why I didn't see it before. But then again, I'm like that when I open the fridge... |
@faintsignal Edit: i found it out
|
Good news: I have merged #49917 which means next insiders will ship with an outline. It is a preview, not yet finished and not yet enabled by default. How to enable the outline preview? All you need to do is select 'Outline' in the explorer view context menu: Note that there are many ideas and expectations where to show the outline view. We started by thinking about what to show and because of that the outline view currently sits in the explorer view. Alternative locations are being discussed here: #49923 and as usually everyone is invited to join the discussion. What does it already do? The outline is far from finished but these are the features we support in the first round:
What's next? We have read through the comments here and looked at other outline implementation. We track further work with the |
@jrieken will this outline view be a generic view that other language plugins could build upon? |
The data it shows comes from extensions - it currently uses the |
@jrieken This looks great! But for those of us that need custom outlines, are all the APIs used by this exposed to us for use in our own tree? |
No, this is a client feature (like all of our UX features) and doesn't use the extension API. |
In the name of GH issue manageability (this issue takes aged to load) I am closing and locking this. Let's continue the discussions in topic-issues labeled with Thanks and Happy Coding! |
VSCode very quickly got to nearly being my default editor. One thing I'm missing is something like https://atom.io/packages/symbols-tree-view where I can view the structure of a file whilst editing. I've used this view across many editors for years.
The text was updated successfully, but these errors were encountered: