-
-
Notifications
You must be signed in to change notification settings - Fork 944
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
Add basic F# support #1078
Add basic F# support #1078
Conversation
Absolutely cool! Does the editor loads referenced projects too? |
@ykafia Glad to see you like it 😃 Dependencies of the F# project are displayed. However I'm just getting into enhancing all changes, because I spend most of my time fixing that annoying |
Hey folks, this is ready for a review. I would be very happy to get input what is necessary to get this merged. |
Thanks, this improvement is very welcome! SupportedLanguages = new SupportedLanguage[]
{
{
Name = "C#",
Extension = ".csproj",
}
} The idea would be then to only have to maintain this specific file and stop hardcoding ".csproj" all over the places. |
Thank you, I'm very happy to hear you're open for this improvement! :) Unfortunately I have some bad news. I spend the last days trying to get a template running with F# and always run into the problem that the resulting window is black. Even worse, I ran out of ideas what the problem could be. Do you folks have some idea why and how that could happen? |
Do you have a test project for it ? |
@VaclavElias and @ZZAAAKK are currently looking into reviving this. |
Yeah, I suggested to do a separate PR where we will take only some bits from this PR, including the advise about the |
Added SupportedLanguage class to centralise supported language information. Implemented SupportedLanguage.SupportedLanguages list to perform file extension checks in place of hard-coded extensions. NuGet v4.1.1.0-fix1078 tested by creating new F# app, adding dependencies, some boilerplate for a new scene, and building. The same steps have been carried out with a new C# app - all successful.
@realvictorprm are you still around to finalise this? The box in F# arrived :) |
Should this be closed? |
Let's close. A new PR should be done to make further adjustments so F# can work also outside of code-only approach. |
Closing, as it needs to be redone. |
PR Details
With these changes F# projects are compiled and included in the solution tree. This allows to have F# projects which are the startup project and automatic recompilation as soon as the source files changed.
Besides, original changes were from @Zeroto, however I had to edit the fork from him to get the F# support up and running again with the latest .NET version. There have been some changes since .NET 5.0.2xx, which required to declare the env var
DOTNET_HOST_PATH
. Without that the F# compilation fails, because the F# targets build on that this env var is existent.I applied that "fix" based on these insights here.
ionide/proj-info#100
ionide/ionide-vscode-fsharp#1509
Related Issue
#781
Motivation and Context
I like to be able to code my game in F# too, with this I have at least minimal engine support for F#.
Types of changes
Checklist