Renamed to QR Script
- Split into three projects: Library, Console, and Tests - Library compiles as QRScript.Interpreter to avoid conflicts
This commit is contained in:
parent
e681e6144c
commit
6501b72973
16 changed files with 82 additions and 20 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -99,4 +99,4 @@ obj/
|
|||
# Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option)
|
||||
|
||||
*.glyb
|
||||
dist/**
|
||||
**/dist/
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
namespace Glyph;
|
||||
namespace QRScript.Console;
|
||||
|
||||
[Command("build", Description = "Build Glyph program.")]
|
||||
public class BuildCommand : ICommand
|
|
@ -1,5 +1,5 @@
|
|||
global using Glyph;
|
||||
global using Glyph.Extensions;
|
||||
global using QRScript.Console;
|
||||
global using QRScript.Extensions;
|
||||
global using QRCoder;
|
||||
global using CliFx;
|
||||
global using CliFx.Attributes;
|
|
@ -1,6 +1,6 @@
|
|||
# Makefile for building and packaging the Sims 2 .s2pk CLI tool
|
||||
|
||||
APP_NAME = glyph
|
||||
APP_NAME = qrscript
|
||||
CONFIGURATION = Release
|
||||
RUNTIME_LINUX = linux-x64
|
||||
RUNTIME_MAC = osx-x64
|
|
@ -1,6 +1,6 @@
|
|||
await new CliApplicationBuilder()
|
||||
.AddCommand<RunCommand>()
|
||||
.AddCommand<BuildCommand>()
|
||||
.SetExecutableName("Glyph")
|
||||
.SetExecutableName("QR Script")
|
||||
.Build()
|
||||
.RunAsync();
|
|
@ -4,15 +4,18 @@
|
|||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<AssemblyName>glyph</AssemblyName>
|
||||
<AssemblyName>qrscript</AssemblyName>
|
||||
<Nullable>enable</Nullable>
|
||||
<Version>0.2.104</Version>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="CliFx" Version="2.3.5" />
|
||||
<PackageReference Include="DynamicExpresso.Core" Version="2.19.0" />
|
||||
<PackageReference Include="QRCoder" Version="1.6.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\QRScript\QRScript.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -1,4 +1,4 @@
|
|||
namespace Glyph;
|
||||
namespace QRScript.Console;
|
||||
|
||||
[Command("run", Description = "Run a Glyph program.")]
|
||||
public class RunCommand : ICommand
|
|
@ -1,17 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Install glyph locally for current user (no sudo)
|
||||
# Usage: ./install.sh ./dist/glyph-linux/glyph
|
||||
# Install qrscript locally for current user (no sudo)
|
||||
# Usage: ./install.sh ./dist/qrscript-linux/qrscript
|
||||
|
||||
set -e
|
||||
|
||||
PLATFORM="$1"
|
||||
SOURCE_BIN="./dist/glyph-$PLATFORM/glyph"
|
||||
SOURCE_BIN="./dist/qrscript-$PLATFORM/qrscript"
|
||||
INSTALL_DIR="$HOME/.local/bin"
|
||||
TARGET="$INSTALL_DIR/glyph"
|
||||
TARGET="$INSTALL_DIR/qrscript"
|
||||
|
||||
if [[ ! -x "$SOURCE_BIN" ]]; then
|
||||
echo "❌ Error: Provide a valid built glyph binary as the first argument."
|
||||
echo "❌ Error: Provide a valid built qrscript binary as the first argument."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -23,6 +23,6 @@ if [[ ":$PATH:" != *":$INSTALL_DIR:"* ]]; then
|
|||
echo "⚠️ $INSTALL_DIR is not in your PATH. Consider adding this to your shell profile:"
|
||||
echo " export PATH=\"\$HOME/.local/bin:\$PATH\""
|
||||
else
|
||||
echo "✅ Installed glyph to $TARGET"
|
||||
echo "Run 'glyph --help' to get started."
|
||||
echo "✅ Installed qrscript to $TARGET"
|
||||
echo "Run 'qrscript --help' to get started."
|
||||
fi
|
2
QRScript.Test/GlobalUsing.cs
Normal file
2
QRScript.Test/GlobalUsing.cs
Normal file
|
@ -0,0 +1,2 @@
|
|||
global using QRScript;
|
||||
global using QRScript.Extensions;
|
28
QRScript.Test/QRScript.Test.csproj
Normal file
28
QRScript.Test/QRScript.Test.csproj
Normal file
|
@ -0,0 +1,28 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
<IsTestProject>true</IsTestProject>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="coverlet.collector" Version="6.0.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
||||
<PackageReference Include="NUnit" Version="3.14.0" />
|
||||
<PackageReference Include="NUnit.Analyzers" Version="3.9.0" />
|
||||
<PackageReference Include="NUnit3TestAdapter" Version="4.5.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Using Include="NUnit.Framework" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\QRScript\QRScript.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
15
QRScript.Test/UnitTest1.cs
Normal file
15
QRScript.Test/UnitTest1.cs
Normal file
|
@ -0,0 +1,15 @@
|
|||
namespace QRScript.Test;
|
||||
|
||||
public class Tests
|
||||
{
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Test1()
|
||||
{
|
||||
Assert.Pass();
|
||||
}
|
||||
}
|
14
QRScript/QRScript.csproj
Normal file
14
QRScript/QRScript.csproj
Normal file
|
@ -0,0 +1,14 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<AssemblyName>QRScript.Interpreter</AssemblyName>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="DynamicExpresso.Core" Version="2.19.0" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -1,4 +1,4 @@
|
|||
namespace Glyph;
|
||||
namespace QRScript;
|
||||
|
||||
using DynamicExpresso;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
namespace Glyph.Extensions;
|
||||
namespace QRScript.Extensions;
|
||||
|
||||
using System.Text;
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
# 💾 Glyph
|
||||
# 💾 QR Script
|
||||
|
||||
Glyph is a human-readable esoteric programming language that is designed to fit into a 57x57 QR code (~1,187 characters). With the initial interpreter scaffold together using GPT, it is written C# with the interpreter based on Dynamic Expresso.
|
||||
QR Script is a human-readable esoteric programming language that is designed to fit into a 57x57 QR code (~1,187 characters). With the initial interpreter scaffold together using GPT, it is written C# with the interpreter based on Dynamic Expresso.
|
||||
|
||||
## 🎛️ Features
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue