LICENCES

Where the pronunciation data comes from

The Wugniu pronunciation guide is looked up in the 吳語學堂 Shanghai dictionary (GPL-3.0) with tones from a CC0 table by Yuanhao Chen. Our corrections are released under the same GPL-3.0 terms. The notice below is the file in the repository, verbatim.

# Lexicon data — provenance and licences

The pronunciation guide in Tangerine is looked up in the files in this directory
(DECISIONS.md D-071). They are vendored unchanged; our corrections live in
`spike/lexicon/overrides.mjs` and are released under the same terms as the
dictionary they correct.

## wugniu_zaonhe.dict.yaml — 吳語學堂 Shanghai dictionary (GPL-3.0)

- Source: https://github.com/NGLI/rime-wugniu_zaonhe — `wugniu_zaonhe.dict.yaml`
- Commit: `12a9d3032cff3206db1792aa9d8f85440fc593c0` (2026-06-05, "perf(zaonhe.dict): 翟")
- Dictionary version (from its header): 2026.06.05
- Fetched: 2026-09-29, from
  `https://raw.githubusercontent.com/NGLI/rime-wugniu_zaonhe/master/wugniu_zaonhe.dict.yaml`
- Authors, as credited in the file's header (碼表製作): 吳飛得, Shin Zoqchiuq, 神死慟瞑, 沪语角.
- Licence: **GPL-3.0**. The header credits the Rime 吳語輸入方案 word list by 上海閒話abc and
  吳語越音 (https://github.com/rime/rime-wugniu), released under GPLv3, from which this
  dictionary is derived, so it inherits that licence. The text of the GPL is in
  `LICENSE-GPL-3.0.txt`, fetched from https://github.com/rime/rime-wugniu/blob/master/LICENSE
  (commit `de40b29f8218cc852bf82b315c7070f1d50bda02`).
- Romanisation scheme: Wugniu (吳語學堂 / wugniu.com), middle-generation (中派) Shanghai.
- Use here: the reading (spelling) of every character and word. The characters in this
  file are traditional; `trad-to-simp.tsv` bridges them to the simplified characters the
  corpus is written in.

## qieyun_zaonhe.dict.yaml — 推導上海話 tone table (CC0-1.0)

- Source: https://github.com/wugniu/rime-qieyun_zaonhe — `qieyun_zaonhe.dict.yaml`
- Commit: `1c726de2308a6c70ab477d0aa2b53ea26324a781` (2022-07-06)
- Dictionary version (from its header): 2022.07.06
- Fetched: 2026-09-29, from
  `https://raw.githubusercontent.com/wugniu/rime-qieyun_zaonhe/master/qieyun_zaonhe.dict.yaml`
- Author: Yuanhao "Nyoeghau" Chen.
- Licence: **CC0-1.0** (public-domain dedication), as declared by the repository.
- Use here: **only** to choose between tone 1 (陰平) and tone 5 (陰去) for a syllable whose
  spelling the main dictionary already gives. It is extrapolated from Middle Chinese, so it
  is never used as a source of readings, and when it offers two tones at equal share the
  tone is left unresolved rather than guessed.

## trad-to-simp.tsv — traditional → simplified bridge (Unicode licence)

- Derived by `spike/lexicon/variants.mjs` from the `kSimplifiedVariant` field of the Unicode
  Han Database (`Unihan_Variants.txt`, Unicode 18.0.0, https://www.unicode.org/Public/UNIDATA/Unihan.zip),
  restricted to characters that appear in the two dictionaries above, plus the hand pairs in
  `spike/lexicon/hand-variants.mjs`.
- Licence: Unicode Data Files and Software Licence (https://www.unicode.org/license.txt).
  Unihan itself is not vendored.

## lexicon.json — the compiled table

- Built by `spike/lexicon/build.mjs` (`npm run lexicon:build`) from the three files above.
  Reproducible; checked in so the app and the tests never depend on a build step.
- Being derived from the GPL-3.0 dictionary, it is distributed under GPL-3.0 as well.

## Our additions

`spike/lexicon/overrides.mjs` — hand readings, tone choices the tables cannot settle, a
house word list for segmentation, and the sentence particles shown without a tone. Released
under **GPL-3.0**, the same terms as the dictionary. Nothing in it has yet been scored by a
native speaker; each line says so.

Tone numbers (1 5 6 7 8) are computed from the Wugniu spelling and the tone table by the
rules in `spike/lexicon/tones.mjs` (D-072); they are not part of either source file.

← About Tangerine