From 612092d9785a31ffd4aa1fffea038669e7212dc1 Mon Sep 17 00:00:00 2001 From: KeshavAnandCode Date: Mon, 18 May 2026 15:54:48 +0000 Subject: [PATCH 1/2] added langs command utility --- src/foreignthon/cli.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/foreignthon/cli.py b/src/foreignthon/cli.py index 4a93529..2eeb306 100644 --- a/src/foreignthon/cli.py +++ b/src/foreignthon/cli.py @@ -274,7 +274,25 @@ def check(file: Path): click.echo(f"✗ {e}", err=True) sys.exit(1) +@main.command(context_settings=CONTEXT_SETTINGS) +def langs(): + """List all installed language packs.""" + from .pack import _discover_packs + packs = _discover_packs() + if not packs: + click.echo("No language packs installed.") + click.echo("Try: pip install foreignthon-es") + return + + click.echo("Installed language packs:") + for code, module in sorted(packs.items()): + import json + data = json.loads(module.get_pack_path().read_text(encoding="utf-8")) + name = data["meta"].get("name", code) + native = data["meta"].get("native_name", "") + click.echo(f" {code:<6} {name} ({native})") + @main.command("pack", context_settings=CONTEXT_SETTINGS) @click.argument("json_file", type=click.Path(exists=True, path_type=Path)) def validate_pack(json_file: Path): From 3c7140a49472e43d6440f7734fc3545d4fe210c7 Mon Sep 17 00:00:00 2001 From: KeshavAnandCode Date: Mon, 18 May 2026 15:58:09 +0000 Subject: [PATCH 2/2] bumped versions --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 4d573cb..3747d22 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "foreignthon" -version = "0.5.0" +version = "0.5.1" description = "Write Python in any language. Transpiles foreign-language .xx.py files to standard Python." license = { text = "GPL v3" } requires-python = ">=3.9"