Skip to content
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

I would like different key-bindings for metadata-as-source vs decompile-sources #26426

Closed
CyrusNajmabadi opened this issue Apr 26, 2018 · 4 comments
Labels
Milestone

Comments

@CyrusNajmabadi
Copy link
Member

Related to: #26415

I'm finding the current situation around decompilation unsatisfying, and i've finally figured out why. It turns out i use goto-def on metadata symbols for two reasons:

  1. to actually see how they were implemented.
  2. to just get a high level view of all the signatures and capabilities of the type.

I want decompile for 1 and i use MAS for 2. The reason for MAS currently is that hte decompile experience is just pretty poor in many ways. It doesn't clean things up like MAS does, and i can't easily 'collapse to definitions' and get the same overview mode that MAS gives me.

So, i would really like decompile to improve in many ways in terms of making the experience much more like MAS. Note that MAS was not done haphazardly. Even in the first release we added it (maybe VS2005?), we spent a lot of effort on making the UI very clean, and very effective for being able to absorb all the data easily. For example, the way that we collapse comments such that they are to the left of a signature, as opposed to being above the signature is very intentional. it ensures that you can see all sigs nicely against each other.

We also group and sort members appropriately.

I would love it if decompilation could make as good an experience as MAS. If it could, i think i could use it full time. But until then, i do not like that is has hijacked the experience and i cannot get both experiences in the same session without a lot of annoyance.

@CyrusNajmabadi
Copy link
Member Author

Tagging @dotnet/roslyn-ide @DustinCampbell @sharwell @Pilchie for thoughts here on the best path forward.

@jasonmalinowski
Copy link
Member

I would love it if decompilation could make as good an experience as MAS. If it could, i think i could use it full time. But until then

Is there a small list of things that would mean this was as good as that? I am sympathetic (and agree in my own usage of this too)....but wondering if there's some small papercuts that we can use to make it actually better vs. workaround it .

@CyrusNajmabadi
Copy link
Member Author

Yes. @jasonmalinowski i've at least identified some stuff here: dotnet/csharplang#1485

The collapsing and really good comment placement are extremely valuable for giving that condensed view of the world. Also ordering. Right now it looks like decompilation puts nested types first. But i didn't ask to go to def on the nested type. I went to ImmutableArray. I want to see that first. And, if i'm interested, i can expand the nested types at the bottom.

I agree, MAS may not at all be important of decompilation can be polished appropriately. However, until that happens, i would like both systems.

@CyrusNajmabadi
Copy link
Member Author

Closing out due to improvements in decompiled sources.

@CyrusNajmabadi CyrusNajmabadi closed this as not planned Won't fix, can't repro, duplicate, stale Oct 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants