Repository navigation
List each Spanish given name written with ñ again with n (#1081) - #1082
Merged
Merged
Conversation
Data from systems without the letter writes Begoña as "Begona", so locales.ES read "Maria Begona Lopez" family "Begona Lopez" where "María Begoña López" reads middle "Begoña". tools/es_given_names.py now writes each listed word written with ñ again with n (_N_SPELLINGS), where that spelling passes the list's own share over every spelling it stands for: ES gains begona, inaki, benat and zurine, ES_AR those and six more, and martiño's n spelling fails (Martino is mostly a surname). The fold runs one way and lives in the data: the list's matching and _normalize are unchanged, so a surname written with ñ (Oña, Mariño, Niño) never matches an entry written with n. rules/O6 gains the clause, decisions/O6 the entry with the declined _normalize and two-way folds. Closes #1081 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- rules/O6: the clause names the share condition, so martiño's refused n spelling no longer contradicts it. - tools/es_given_names.py prints every candidate n spelling with its summed given and surname uses, its share and whether it is kept, so decisions/O6's figures have a recipe; the entry now quotes the tool's tallies (martino 24.0%, not the raw table's 21%; Oña 3,569 uses). - A test the given-side sum must pass (zuriñe/zurine). - customize.rst says a name written with ñ is listed with n too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- es_given_names.py --words prints any words' tallied uses, the counts decisions/O6 quotes for Oña, Reñe, Mariño, Niño, Nuño and Martino. - A refused n spelling is reported on stderr, so stdout stays the list the docstring's awk recipe cuts. - decisions/O6: ona and rene fall under ES's share once their ñ surnames are summed in, not ES_AR's; the two-way fold matches them whatever the share. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Under
locales.ESandlocales.ES_AR, rules/O6's given-name veto matchedMaría Begoña Lópezbut notMaria Begona Lopez. An accent folds when the list is matched; ñ does not. Data from systems without the letter writesBegona, so the veto missed it.The change is in the data.
tools/es_given_names.pynow writes a second tuple,_N_SPELLINGS, beside_RANKED:begona,inaki,benatandzurine. ES_AR gains those plusinigo,garbine,enaut,argine,eguzkineandekine.martiño's n spelling is refused by construction:martinois 24.0% given once summed, against ES_AR's 50% share, because Martino is mostly a surname.Neither the list's matching (
given_name_key) nor_normalizechanges. The fold therefore runs one way: a surname written with ñ (Oña, Mariño, Niño) never matches an entry written with n.parser_for(...)Maria Begona LopezBegona LopezBegona, familyLopezJon Inigo PerezInigo PerezInigo, familyPerezJuan Oña PérezOña Pérezonais listed,oñais not)Luis Martino GilMartino GilMeasured
Measured against master 2d91f6b, under
default,plain:ESandplain:ES_AR, withconfig_diff.py diff --readingscompared line by line between the two trees:Inigofiled as a surname. Iñigo is also a surname, but it passes ES_AR's share at 78.8%, and ES lists noiñigo.cldr_agreement.pyview, and the full runs of tse-donors, dof-signatures, ukec-individuals and ORCID's six Spanish-speaking countries are all unchanged.config_diff.py scoreover ORCID and PatentsView in those six countries fixes one PatentsView Spain record under ES and moves nothing else.Declined, with numbers in decisions/O6:
_normalize. Senor and Senora become titles by default. Under ES and ES_AR, Dona becomes a title too, which pt.toml refuses because it is a given name: 258 names a pack. es.toml's spellings have to be rewritten, and 3.0 pickles holding an ñ edit stop loading.Docs
tests/v2/rules_budget.jsonis re-recorded for it (870 → 903 words); the clause reads no new signal, only the list it already read.--wordsflag, and the n rows it prints with summed uses, produce every quoted figure.locales.rstparagraph with doctests, a sentence incustomize.rst, and a sentence plus:issue:link in the release log's ES bullet. It goes there rather than in a bullet of its own because both packs are new in 3.0.Checks
sphinx-build -b doctest,-W -b html, andpython -m doctest README.rst.--wordsgives the remaining counts, and refused rows go to stderr. All figures in the third commit were re-checked by running the commands it adds.Closes #1081
🤖 Generated with Claude Code