29 lines
984 B
Markdown
29 lines
984 B
Markdown
# mars-unicode-tables
|
|
|
|
Unicode Character Database input and generated C tables for MARS-NWE.
|
|
|
|
This repository vendors the complete Unicode Character Database 17.0.0 under
|
|
`UCD/` and generates NSS-compatible BMP case mapping tables under `TAB/`.
|
|
The generated symbols are intended for MARS-NWE `libnwcore`:
|
|
|
|
- `NSSUniToLower[65536]`
|
|
- `NSSUniToUpper[65536]`
|
|
|
|
The generated tables are based on Unicode UCD data, not on Novell NSS
|
|
`shared/sdk/unitables/*.tab` files. The Novell files may be used only as shape
|
|
or compatibility references in the MARS-NWE work tree.
|
|
|
|
## Regeneration
|
|
|
|
```sh
|
|
scripts/gen_unicode_tables.py \
|
|
--ucd-dir UCD \
|
|
--output TAB/unicodeTables.c \
|
|
--unicode-version 17.0.0
|
|
```
|
|
|
|
The NSS table ABI is `unicode_t[65536]`, so the generator emits only simple
|
|
single-code-point BMP mappings from `UnicodeData.txt`. Full, multi-code-point,
|
|
and locale-sensitive mappings from `SpecialCasing.txt` cannot be represented in
|
|
these arrays and are intentionally not emitted.
|