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

Visual Studio for Mac and VS Code support [feature request] #23

Open
orestesgaolin opened this issue Feb 21, 2019 · 5 comments
Open

Visual Studio for Mac and VS Code support [feature request] #23

orestesgaolin opened this issue Feb 21, 2019 · 5 comments

Comments

@orestesgaolin
Copy link

As a .NET developer I would love to use this extension in VS4Mac and VS Code.

Alternatively, some kind of cross-platform CLI interface could be useful.

@ironcev
Copy link
Member

ironcev commented Feb 21, 2019

Hi @orestesgaolin,

Thanks a lot for the feature request! Sharpen for VS4Mac and VS Code - absolutely. Actually, this feature was first requested by @selectnull in private correspondence, soon after I've published the embarrassing v0.1.0 (original quote in Croatian, but I guess it would sound similar in Polish 😃):

E sad kritika... ideja Sharpena je super. Ali... zasto to mora biti plugin na VS? Po meni ispravna arhitektura bi bila da imas library koji implementira funkcionalnost i daje interface prema van. A onda se implemtira VS plugin koji koristi taj lib, mozes napraviti CLI tool koji koristi taj lib, ja mogu napraviti plugin za Vim ili Emacs ili whatever...

Current architecture goes into that direction. The analysis engine is a standalone DLL that does not depend on Visual Studio at all. At the moment it is a .NET 4.6.x DLL but it can for sure easily be ported to .NET Standard. This makes it portable to Linux and Mac. I already wrote one Visual Studio Code extension and have the necessary technical knowledge to write the VS Code plugin. I guess supporting VS4Mac and Rider would be a similar effort.

The reason why it's not done so far is the limited time I have at disposal. At the moment I am the only developer on the project which makes the overal development pace pretty slow. After publishing the support for C# 8.0 I plan to start more actively searching for contributions and I hope there will be developers interested into developing plugins for other IDEs. Let me know if you would maybe be interested.

Regarding the CLI, assuming the Engine is ported to .NET Standard, getting a platform independent CLI (.NET global tool, preferably) would be straightforward. However, usability of such a CLI version concerns me. Just listing the results would be cumbersome, and without the possibility to immediately jump to the corresponding line in code the tool would be very limited. I could imagine case where one would like to have Sharpen as a part of build pipeline, but that somehow colides with the primary intention behin the tool which is learning and understanding new C# features.

Bottom line: plugins for other IDEs make sense and will come one day. At the moment my focus is C# 8.0, afterwards the refactorings and the embedded documentation.

@selectnull
Copy link

I'm glad my initial critique has found another kindred spirit that can guide this awesome project in the right direction :)

@orestesgaolin
Copy link
Author

orestesgaolin commented Feb 22, 2019

@ironcev thank you for your prompt response! That's great to hear that you think about extending the extension (pun intended).

original quote in Croatian, but I guess it would sound similar in Polish 😃

Ha, ha! It sounds a bit like Polish indeed!

At the moment it is a .NET 4.6.x DLL but it can for sure easily be ported to .NET Standard.

I think there are some really helpful people related to MS that look for OSS projects that aim for .NET Standard. I can think of terrajobst, csharpfritz or shanselman that do this kind of migrations pro publico bono.

@ironcev
Copy link
Member

ironcev commented May 21, 2019

The recent 178053b commit ports Sharpen.Engine to .NET Standard 2.0 and represents the first step in the direction of supporting multiple platforms and IDEs.

@BrucklynBoy
Copy link

Any update on that? Sharpen for VS Code and/or Rider would be awesome (even better is based on .net core ;))

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants