Repository navigation
Give the honorifics a view of their own, leaving credentials (#326) - #1041
Merged
Merged
Conversation
A form of address written after a name (`さん`, `씨`, `先生`) left the `credentials` view for a third, `ParsedName.honorifics`, so the suffix's three views are generation, credentials and honorifics. The `honorific` and `professional_honorific` kinds compile into HONORIFIC_WORDS, classify tags them, and `Token.reading` reads them as the new `ReadingKind.HONORIFIC`; a courtesy (`Esq.`) and a status (`ret.`) stay credentials, read as `post-nominal`. No field of any parse moves: `suffix` keeps every word. The snapshot records the new view where it is not empty (83 of 6,790 readings), and rules/R8 is renamed for its three views. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Classify's Reads: and its emitted tags name honorific_words and vocab:honorific-word; the compile-invariant test covers the new kind set; R1, the S Background, decisions/R8's Standing lines and its 4b entry, vocabulary-model's Standing line and its 2026-10-28 entry, the RFC's API table and tools/differential/README.md now say three views or carry a supersession note; the snapshot denominator is 6,791. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The design-docs review found that CLDR's own samples put `議員`, `国会議員` and `太平紳士` in its credentials field and `先生`, `教授`, `さん` and `님` in its title field, so the first build's whole-kind move of `professional_honorific` into `honorifics` took six offices out of the field CLDR puts them in. Those six, in ja.toml and zh.toml alike, are now credentials written as words, as `博士` is; their glued peel is unchanged. rules/R8's Because no longer says CLDR's credentials field never holds such a word, and its Accepted records that a courtesy said to the bearer (`Rinpoche`, `महाराज`) stays a credential by its kind. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
R8's Because named 씨, which CLDR's samples never file; 님 is the Korean word they file as a title. The decisions entry gains recipes for its kind counts and its lone-word alternatives. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Nov 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #326.
What
The suffix's views were two,
generationandcredentials, and every word that was neither a generation nor a credential fell intocredentials, honorifics included:parse("김민준 씨").credentialswas'씨'. A form of address after the name now has a view of its own.Smith, John, Jr., MD, Esq.Jr.MD, Esq.田中さん, PhDPhDさん王小明先生先生雅婷婷婷王二世先生,議員議員先生honorifickind (19 words:さん,様,씨,님,氏,जी,साहब…) and theprofessional_honorifickind (11:先生,教授,선생님,社長,課長,部長…) compile into a new internal set,HONORIFIC_WORDS.Token.readingreads these words as the newReadingKind.HONORIFIC.Esq.) and a status (ret.,ז"ל) stay incredentials, read aspost-nominal. CLDR's own examples of its credentials field includeEsq..議員,议员,国会議員,國會議員,太平紳士,太平绅士) are nowcredentialwords written as words, as博士already was. CLDR files先生,教授,さんand님as titles, which is the honorifics view's ground.ParsedName.honorificsis a view likefamily_base: a render key ({honorifics}), not a field ofas_dict().Why now
credentialsis new in 3.0. Narrowing it after 3.0 ships would change a released view. CLDR'senpattern writes{surname} {generation}, {credentials}, which with the honorific incredentialswould renderKim Minjun, ssionce a pack carries patterns.What moved
suffixkeeps every word, andas_dict(),replace()and the repr are unchanged.田中さん, PhD).Ambiguity.alternative. It nameshonorificwhere 2.7.0 and 2.8.0 namedpost-nominalfor six lone Devanagari and Bengali words (जी,साहब…).Docs
R8-generation-credentials-and-honorifics-views.md, in bothrules/anddecisions/).suffixsplit intogenerationandcredentials? (Smith, Jr., PhD) #326 entry: the options weighed, the CLDR evidence for the split, and the recompute recipes.honorificswhere it is not empty (RECORDED_LATER).rules_budget.jsonis re-recorded: R8's Then grew by one clause, which reads the signal it already read, each word's reading kind.Verification
build.py --checkand the Sphinx doctest build all pass.professional_honorific.🤖 Generated with Claude Code