Skip to content

Read Gen as a given name outside a title phrase (#999) - #1029

Merged
derek73 merged 3 commits into
masterfrom
feat/gen-given-name
Nov 3, 2026
Merged

derek73 merged 3 commits into
masterfrom
feat/gen-given-name

Conversation

@derek73

@derek73 derek73 commented Nov 3, 2026

Copy link
Copy Markdown
Owner

Follows #1027 (#999, Maj). Gen, General written short, is also a Japanese and Chinese given name, and parse() read it as a title wherever it opened a name. It now reads the way Maj does: a title only inside a title phrase (rules/H9, the title phrase), and the trailing title when written short with its period (rules/H5, the trailing title run).

"Gen Goto"              before: title='Gen'           now: given='Gen'   (title-or-name reported)
"Mr Gen Zhang"          before: title='Mr Gen'        now: title='Mr', given='Gen'
"Lt Gen John Smith"     title='Lt Gen'                unchanged (partner phrase)
"Col Gen John Smith"    title='Col Gen'               unchanged
"Gen Sir Nick Carter"   title='Gen Sir'               unchanged ('gen' attaches to 'sir')
"Gen. John Smith"       title='Gen.'                  unchanged (H2's shape)
"SMITH, JOHN GEN."      title='GEN.'                  unchanged (H5's written-short clause)
"Gen Pinochet"          before: title='Gen'           now: given='Gen'   (accepted cost)

Why Gen, and why not the others

I checked 22 rank, office and clerical abbreviations in TITLES against the fielded corpora, where people split their own names into boxes. Only gen and hon open the given box as a name. The rest appear there only as titles typed into the box (Lt Col …, Fr. …, Sr …, Mgr. …).

gen's bearers:

  • 680 ORCID given boxes open with Gen (China 155, Japan 100), 647 of them the whole box.
  • PatentsView: 263 records naming 274 inventors (Japan 207).

hon, the Cantonese given name, is left for its own decision. UK registers write the style "the Honourable" bare at the head.

The phrases

A gated word is a title only with a partner, so every rank and office written before Gen must attach to it, or its phrase splits. These now attach to gen:

  • lt, lieutenant, brigadier, colonel, col, adjutant
  • attorney, surgeon, secretary, governor, gov, solicitor
  • director, dir, comptroller, vicar, advocate

gen and maj also attach to sir. maj, major and chief already attached. nameparser/vocab/AGENTS.md's check from #1027 is what this list follows.

Pre-existing gaps, not this change's: Brig Gen, Insp Gen and Lt-Gen already misread on master, because brig, insp and hyphenated ranks are not title words.

Measured

Against master ba1ac328, over every local-corpus text holding gen, maj, sir or a partner word (3,639 texts). 134 move, all gen texts:

  • About 65 given names fixed (orcid 29, patentsview 16, ctgov 7, psc 6, jrc about 5, fec 1, govuk 1).
  • 9 post-nominals fixed: GOV.UK generals' ADC Gen, which read title General Sir Gen.
  • About 43 bare ranks now read as given names (jrc about 42, fec 1).
  • About 17 unclear or not a person (Gen X-ers, Gen Con).

The partners add no move.

measure.py --base gives the same moves per corpus. CLDR, GND and cz-candidates agreement don't move. Box agreement: orcid 30 progress, patentsview 16, psc 6, none regressing. JRC spelling consistency: 3 persons now alike, 0 apart.

The comma-shape and name-order sweep (384 readings) moves the same shapes maj's did. Only the partner phrases differ.

Costs recorded

In rules/H9's Accepted clause and decisions/H9:

  • A bare rank at the head reads as a given name (Gen Pinochet), as with Maj and Dean.
  • A rank joined by and joins as a given name (Gen. and Mrs. John Smith), per H9's connective precedence.
  • Gen. Smith, John keeps family Gen. Smith, since H6 (a title before a family comma) peels by vocabulary only.
  • Sir Gen Goto reads title Sir, given Gen; the British order Gen Sir keeps its title.

Docs

  • decisions/H9 gets a gen entry and Standing line; the maj Standing pointer is disambiguated.
  • rules/H9 and rules/H5 gain examples.
  • The release-log bullet is merged into the Maj one.
  • The vocab README is updated.
  • docs/locales.rst drops a strict-choice example (Gen Hoshino) that the default now reads the same way. A strict-choice test row moved to Capt Hoshino for the same reason.

Not done here: docs/migrate.rst's "Changed in 3.0" list has no per-change entries yet for this cycle; that's left for the release sweep.

Review

Two design-docs review rounds, on the change and on its fixes. Everything they found is fixed in the later commits.

Checks run: full suite, mypy, ruff, Sphinx doctest and html, build.py --check.

🤖 Generated with Claude Code

derek73 and others added 3 commits November 3, 2026 02:21
`gen` (General written short) is also a Japanese and Chinese given
name: 680 ORCID given boxes and 274 US-patent inventors open with it.
It gains a dated given reading and the written-short mark, as `maj`
did, so `Gen Goto` reads given 'Gen', reported title-or-name, while
`Gen.`, a trailing `GEN.` and the rank phrases keep the title.

The ranks and offices that stand before General (`lt`, `lieutenant`,
`brigadier`, `adjutant`, `attorney`, `surgeon`, `secretary`,
`governor`, `gov`, `solicitor`) attach to `gen`, so `Lt Gen John
Smith` and `Attorney Gen Smith` keep their phrase.

Measured against ba1ac32 over the local corpora: 134 texts move,
about 74 given names fixed, about 43 bare ranks now read as given
names (rules/H9's Accepted clause), about 17 unclear.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Seven ranks and offices written before General lost their phrase:
`colonel` and `col` (Colonel General), `director`, `dir`,
`comptroller`, `vicar` and `advocate` (Judge Advocate General) now
attach to `gen`, and `gen` and `maj` attach to `sir`, so `Gen Sir Nick
Carter` keeps title 'Gen Sir'. The release bullet no longer promises
every rank written together and states the `and` shape
(`Gen. and Mrs. John Smith`), which decisions/H9 records as a cost;
its entry gives the 22 words and the 384-reading grid their recipes,
counts PatentsView's 263 records as 274 inventors, and splits the 74
fixes into 65 given names and 9 post-nominals.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug design vocabulary Per-word vocabulary model and language packs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant