Nationalities named as nationalities (“Portuguese”), not as countries #865

Closed
opened 2026-10-10 16:01:32 +00:00 by tiagoagueda · 1 comment
Owner

Nationalities should read Portuguese, French, Spanish, not the countries' names.

What exists today

  • Each nationality is a country menu (accounts/forms.py:757-778, core/postal.CountrySelect), stored as ISO alpha-2 (at most 10, core/personal.py:197), printed with country_names() (:257). Country names come from core/phones.py:89, deliberately in English (:81-87).
  • No demonyms anywhere, and CLDR (Babel) has territory names but no demonyms.

What would change

  • A data table of demonyms, ~250 codes × each language the CV is written in, gendered where the language is (fr portugais/portugaise, pt português/portuguesa), with its source recorded; the menu shows demonyms, the CV prints them.

Decisions

  • Source. Recommended: Wikidata's demonym (P1549) for the codes and languages it covers, extracted once into a committed file like the other reference data, the gaps filled by hand and listed.
  • Gender agreement uses the person's gender field when set, the masculine (the dictionary form) otherwise. Recommended, to be confirmed for each language.
  • The menu keeps the country's name beside the demonym for searching (Portuguese (Portugal)). Recommended.

Checked against main at 8c3d03570. From the maintainer's improvements list of 2026-10-07.

Nationalities should read *Portuguese, French, Spanish*, not the countries' names. ## What exists today - Each nationality is a country menu (`accounts/forms.py:757-778`, `core/postal.CountrySelect`), stored as ISO alpha-2 (at most 10, `core/personal.py:197`), printed with `country_names()` (`:257`). Country names come from `core/phones.py:89`, deliberately in English (`:81-87`). - **No demonyms anywhere**, and CLDR (Babel) has territory names but no demonyms. ## What would change - A data table of demonyms, ~250 codes × each language the CV is written in, gendered where the language is (fr *portugais/portugaise*, pt *português/portuguesa*), with its source recorded; the menu shows demonyms, the CV prints them. ## Decisions - **Source.** Recommended: Wikidata's *demonym* (P1549) for the codes and languages it covers, extracted once into a committed file like the other reference data, the gaps filled by hand and listed. - **Gender agreement** uses the person's gender field when set, the masculine (the dictionary form) otherwise. Recommended, to be confirmed for each language. - **The menu** keeps the country's name beside the demonym for searching (*Portuguese (Portugal)*). Recommended. Checked against `main` at `8c3d03570`. From the maintainer's improvements list of 2026-10-07.
tiagoagueda added this to the 0.6.0 milestone 2026-10-10 16:01:32 +00:00
Author
Owner

Fixed in 7b56a9b69 on main.

Fixed in 7b56a9b69 on main.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Postulo/postulo#865
No description provided.