JetBrains / resharper-devguide

Developer guide for the ReSharper Platform
http://jetbrains.com/resharper/devguide/
Apache License 2.0
71 stars 41 forks source link

PSI docs are lacking #69

Closed maartenba closed 5 years ago

maartenba commented 5 years ago

From https://blog.jetbrains.com/dotnet/2019/02/14/writing-plugins-resharper-rider/#comment-547740:

I could also note that the documentation is severely lacking (most topics are still not even written and others are too brief), there are not enough samples (at least we have Unity ReSharper plugin to use as a reference for some features – though it’s not a great example as it’s quite a bloated project), and plugin API overall (Psi in particular) was not evolved for more than a decade. It’s the same old/legacy and painful API. Roslyn syntax analysis API is making a bit more sense to me.

aienabled commented 5 years ago

Guys, I just want to let you know that the API itself is not that bad but the documentation is definitely lacking - especially the examples part. I had to figure out a lot without any actual docs or examples how to do the most primitive actions - such as implementing a quick fix to extract a const (into the class) for a string value (which could be a regular C# string, a verbal string, an interpolated string, or even both). Turns out it is quite complicated and I did it quicker with Roslyn as there are more examples and overall API (especially for modification) was a bit more intuitive. But I needed to do this with ReSharper and it took several frustrating hours of poor attemps (which was even more painful considering the poor VS2017+ReSharper plugin debug build deployment and debugging experience).

More examples will definitely help with ReSharper extensions development. Alas, Unity ReSharper plugin is a very bloated repository which just added more confusion into my thinking though it was useful for some cases.

I also wish to see all the missing docs topics written.

matkoch commented 5 years ago

The plugin template contains a few examples. Otherwise, as in the blog post described, we would like to encourage people to ask directly, if they have issues.