Every official language, in JSON: 113 listed, five shipped so far
Build / Desktop, server and tools (push) Successful in 33s
Build / Desktop, server and tools (push) Successful in 33s
The language list comes from CLDR (official in a UN member state, plus the six UN languages), with autonyms and text direction supplied for the 21 that ICU does not know. Strings move from resx to one JSON file per language, looked up by code, so a language unknown to ICU or MSBuild still loads; tools/strings.cs checks keys and placeholders in CI. Arabic, Hindi and Chinese drafts prove right-to-left and system-font fallback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
This commit is contained in:
1 parent
7589121846
commit
8eaf9f36fc
17 files changed
+1072
-99
No files matched your search
@@ -13,6 +13,9 @@ dotnet run tools/setup.cs -- --group packaging # pinned nfpm into to
|
||||
dotnet build src/MeWeb.Android/MeWeb.Android.csproj \
|
||||
-p:JavaSdkDirectory=$PWD/tools/jdk/linux-x64/jdk-21.0.12+8 -p:AndroidSdkDirectory=$HOME/Android/Sdk
|
||||
dotnet run --project tools/Screenshots -- dist/screenshots [en,it,...]
|
||||
dotnet run tools/strings.cs -- check # every language against English
|
||||
dotnet run tools/strings.cs -- set Key values.json # one key, every language at once
|
||||
dotnet run tools/languages.cs # regenerate data/languages.json from CLDR
|
||||
dotnet publish src/MeWeb.Desktop -c Release -r win-x64 --self-contained -p:PublishSingleFile=true \
|
||||
-p:IncludeNativeLibrariesForSelfExtract=true -p:EnableCompressionInSingleFile=true
|
||||
dotnet publish src/MeWeb.Desktop -c Release -r osx-arm64 --self-contained
|
||||
@@ -26,11 +29,11 @@ is root-owned, so CI uses the runner user's own `~/.dotnet` (passolo's `tools/re
|
||||
| Path | What |
|
||||
|---|---|
|
||||
| `src/MeWeb.Shared` | `Endpoints.cs` (routes and hosts), wire contracts, `MeWebJsonContext`, generated `BuildInfo` |
|
||||
| `src/MeWeb.App` | Avalonia views and view models, `Services/Localizer.cs` (+ `{s:Tr Key}`), `Strings/*.resx`, `Resources/Colors.axaml` |
|
||||
| `src/MeWeb.App` | Avalonia views and view models, `Services/Localizer.cs` (+ `{s:Tr Key}`), `Strings/<code>.json`, `Resources/Colors.axaml` |
|
||||
| `src/MeWeb.Desktop` | desktop head (`meweb` executable), Windows manifest |
|
||||
| `src/MeWeb.Android` | Android head (`software.arasaka.meweb`), resources, manifest |
|
||||
| `src/MeWeb.Server` | `meweb.arasaka.software`: `/api/info`, `/api/ip` |
|
||||
| `data/languages.json` | every language with `reviewed` or `draft` |
|
||||
| `data/languages.json` | 113 languages: code, autonym, English name, `rtl`, `reviewed` or `draft` |
|
||||
| `tools/setup.cs` + `setup.json` | pinned build tools |
|
||||
| `tools/Screenshots` | headless renders of every view in every language |
|
||||
| `branding/` | the icon (SVG source, PNG, ICO) |
|
||||
|
||||
Reference in new issue
Block a user