VSCode tasks and launch

- Target .NET 9.0 (currently installed)
- Added FIXME to LetCommand
This commit is contained in:
Tony Bark 2025-02-01 17:42:05 -05:00
parent cf7bcaf032
commit 03fd453e19
4 changed files with 83 additions and 2 deletions

26
.vscode/launch.json vendored Normal file
View file

@ -0,0 +1,26 @@
{
"version": "0.2.0",
"configurations": [
{
// Use IntelliSense to find out which attributes exist for C# debugging
// Use hover for the description of the existing attributes
// For further information visit https://github.com/dotnet/vscode-csharp/blob/main/debugger-launchjson.md
"name": ".NET Core Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
// If you have changed target frameworks, make sure to update the program path.
"program": "${workspaceFolder}/BarkBasic/bin/Debug/net8.0/BarkBasic.dll",
"args": [],
"cwd": "${workspaceFolder}/BarkBasic",
// For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
"console": "internalConsole",
"stopAtEntry": false
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach"
}
]
}

54
.vscode/tasks.json vendored Normal file
View file

@ -0,0 +1,54 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/BarkBasic/BarkBasic.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile"
},
{
"label": "run",
"command": "dotnet",
"type": "process",
"args": [
"run",
"--project",
"${workspaceFolder}/BarkBasic/BarkBasic.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile"
},
{
"label": "publish",
"command": "dotnet",
"type": "process",
"args": [
"publish",
"${workspaceFolder}/BarkBasic/BarkBasic.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile"
},
{
"label": "watch",
"command": "dotnet",
"type": "process",
"args": [
"watch",
"run",
"--project",
"${workspaceFolder}/BarkBasic/BarkBasic.csproj"
],
"problemMatcher": "$msCompile"
}
]
}

View file

@ -4,7 +4,7 @@
<OutputType>Exe</OutputType> <OutputType>Exe</OutputType>
<Version>0.1.200</Version> <Version>0.1.200</Version>
<VersionSuffix>alpha</VersionSuffix> <VersionSuffix>alpha</VersionSuffix>
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
</PropertyGroup> </PropertyGroup>

View file

@ -10,7 +10,7 @@ class Program
// Add more commands as needed // Add more commands as needed
string basicCode = @" string basicCode = @"
PRINT ""Hello, World!"" PRINT Hello, World!
LET A = 10 LET A = 10
PRINT A PRINT A
"; ";
@ -23,6 +23,7 @@ class Program
Console.WriteLine(string.Join(" ", args)); Console.WriteLine(string.Join(" ", args));
} }
// FIXME: Fails to assign to variable and return syntax error
static void LetCommand(List<string> args) static void LetCommand(List<string> args)
{ {
if (args.Count != 2 || !int.TryParse(args[1], out int value)) if (args.Count != 2 || !int.TryParse(args[1], out int value))