Paratext.IcuFreeLdml
9.6.0.2-beta
dotnet add package Paratext.IcuFreeLdml --version 9.6.0.2-beta
NuGet\Install-Package Paratext.IcuFreeLdml -Version 9.6.0.2-beta
<PackageReference Include="Paratext.IcuFreeLdml" Version="9.6.0.2-beta" />
<PackageVersion Include="Paratext.IcuFreeLdml" Version="9.6.0.2-beta" />
<PackageReference Include="Paratext.IcuFreeLdml" />
paket add Paratext.IcuFreeLdml --version 9.6.0.2-beta
#r "nuget: Paratext.IcuFreeLdml, 9.6.0.2-beta"
#:package Paratext.IcuFreeLdml@9.6.0.2-beta
#addin nuget:?package=Paratext.IcuFreeLdml&version=9.6.0.2-beta&prerelease
#tool nuget:?package=Paratext.IcuFreeLdml&version=9.6.0.2-beta&prerelease
Paratext.IcuFreeLdml
ICU-free implementation of ILdmlAdapter for reading and writing LDML writing system definitions.
Use this package when you depend on ParatextData but cannot or do not want to ship ICU (for example Android, or other lightweight deployments).
Usage
using Paratext.Data;
using Paratext.IcuFreeLdml;
ScrTextCollection.LdmlAdapter = new IcuFreeLdmlAdapter();
The adapter provides read/write parity with SIL.WritingSystems.LdmlDataMapper for Paratext-supported LDML fields: identity, exemplar characters, delimiters, layout, collations (simple + ICU rules storage), and fonts.
Limitations
- Collation runtime still requires ICU where Paratext uses ICU collators; this library only parses and persists collation data.
sil:reorderedcollations are preserved on round-trip but not loaded into the writing system model.sil:needsCompilingcollations keepSimpleRulesand any existing<cr>rules for round-trip, but rules are not validated or compiled on read (unlike ICULdmlDataMapperwhich may compile on read).\p{...}property classes in exemplar sets are expanded on read (ICU-free); write emits explicit character lists.- Unknown LDML elements are preserved when writing with an existing LDML file as the round-trip base (
xmlTextReaderparameter).
Building the NuGet package
Version is defined in Paratext.IcuFreeLdml.csproj. Release builds produce .nupkg and .snupkg files in bin/Release.
./createIcuFreeLdmlNugetPackage.sh Release
Optional version override:
./createIcuFreeLdmlNugetPackage.sh Release 9.6.0.2-beta
On Windows:
createIcuFreeLdmlNugetPackage.bat Release
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- ParatextData (>= 9.6.0.1-beta)
- SIL.WritingSystems (>= 16.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 9.6.0.2-beta | 67 | 7/20/2026 |
| 9.6.0.1-beta | 68 | 7/6/2026 |