In #1938892: Switch from ISO-3166-1 country data to CLDR unicode data it was attempted to make the country core list match the CLDR Unicode data, however two codes are still wrong:
- 'AN' => t('Netherlands Antilles'),
- 'QO' => t('Outlying Oceania'),
Here is the latest list of territory data from CLDR:
http://www.unicode.org/cldr/charts/latest/supplemental/territory_informa...
'AN' is a former ISO code not any longer in use.
'QO' is an extra "Territory Containment" (groups of territories) for territories that are not included in other territory containments such as Eastern Africa, Caribbean, Central Asia, etc:
http://www.unicode.org/cldr/charts/latest/supplemental/territory_contain...
It is listed as a "private use subtag" in 'Core Specification':
http://cldr.unicode.org/core-spec
These names have been updated since last time Drupal imported territory data from CLDR #1938892: Switch from ISO-3166-1 country data to CLDR unicode data (some minor simplifications)
- 'AG' => t('Antigua and Barbuda'),
+ 'AG' => t('Antigua & Barbuda'),
- 'BA' => t('Bosnia and Herzegovina'),
+ 'BA' => t('Bosnia & Herzegovina'),
- 'BL' => t('Saint Barthélemy'),
+ 'BL' => t('St. Barthélemy'),
- 'CC' => t('Cocos [Keeling] Islands'),
+ 'CC' => t('Cocos (Keeling) Islands'),
- 'EA' => t('Ceuta and Melilla'),
+ 'EA' => t('Ceuta & Melilla'),
- 'GS' => t('South Georgia and the South Sandwich Islands'),
+ 'GS' => t('South Georgia & South Sandwich Islands'),
- 'HM' => t('Heard Island and McDonald Islands'),
+ 'HM' => t('Heard & McDonald Islands'),
- 'KN' => t('Saint Kitts and Nevis'),
+ 'KN' => t('St. Kitts & Nevis'),
- 'LC' => t('Saint Lucia'),
+ 'LC' => t('St. Lucia'),
- 'MF' => t('Saint Martin'),
+ 'MF' => t('St. Martin'),
- 'MM' => t('Myanmar [Burma]'),
+ 'MM' => t('Myanmar (Burma)'),
- 'PM' => t('Saint Pierre and Miquelon'),
+ 'PM' => t('St. Pierre & Miquelon'),
- 'SH' => t('Saint Helena'),
+ 'SH' => t('St. Helena'),
- 'SJ' => t('Svalbard and Jan Mayen'),
+ 'SJ' => t('Svalbard & Jan Mayen'),
- 'ST' => t('São Tomé and Príncipe'),
+ 'ST' => t('São Tomé & Príncipe'),
- 'TC' => t('Turks and Caicos Islands'),
+ 'TC' => t('Turks & Caicos Islands'),
- 'TT' => t('Trinidad and Tobago'),
+ 'TT' => t('Trinidad & Tobago'),
- 'VC' => t('Saint Vincent and the Grenadines'),
+ 'VC' => t('St. Vincent & Grenadines'),
- 'WF' => t('Wallis and Futuna'),
+ 'WF' => t('Wallis & Futuna'),
In CLDR v.28 there are also alternative "short" names for some territories (that CLDR also provide translations for) inside 'common/main/en.xml' :
http://cldr.unicode.org/index/downloads/cldr-28
If we would like to go for the short name versions we would also get these changes;
- 'BA' => t('Bosnia and Herzegovina'),
+ 'BA' => t('Bosnia'),
- 'GB' => t('United Kingdom'),
+ 'GB' => t('UK'),
- 'HK' => t('Hong Kong SAR China'),
+ 'HK' => t('Hong Kong'),
- 'VC' => t('Myanmar [Burma]'),
+ 'VC' => t('Myanmar'),
- 'MO' => t('Macau SAR China'),
+ 'MO' => t('Macau'),
- 'PS' => t('Palestinian Territories'),
+ 'PS' => t('Palestine'),
- 'US' => t('United States'),
+ 'US' => t('US'),
I guess then the names would become more user friendly and aligned with the names people mostly use in everyday informal language. US and UK end up as abbreviations though, not sure what people mostly look for in the select list from these countries? Other changes might be political sensitive for some, however for all other names a simple form is used, and official names are ignored, so not sure why these specific cases should be treated differently.
EDIT: Wikipedia keeps a list of sovereign countries with those not recognized by other states. Useful to at least identify places of conflict.
Comment | File | Size | Author |
---|---|---|---|
#16 | drupal-update_countries-2595595-16-D8.patch | 6.66 KB | Liam Morland |
#6 | make-countries_match_cldr-2595595-6.patch | 6.92 KB | pguillard |
#2 | use-cldr-short-names-for-countries.patch | 2.24 KB | matsbla |
#2 | make-country-core-names-match-cldr.patch | 5.86 KB | matsbla |
#2 | make-country-core-list-match-cldr.patch | 799 bytes | matsbla |
Comments
Comment #2
matsbla CreditAttribution: matsbla commentedAttaching pacthes
Comment #3
bojanz CreditAttribution: bojanz at Centarro commentedWe should not be using the short names.
We need a patch that updates the country list (make-country-core-names-match-cldr.patch + make-country-core-list-match-cldr.patch) and we need to update update-countries.sh for the list of ignored countries.
Current update-countries.sh code:
Needed update-countries.sh code, copied from the commerceguys/intl library:
(Note that my suggested improvement also removes BV, HM, CP).
Comment #4
mgiffordAdding acronym & also link to Wikipedia.
Comment #5
mgiffordComment #6
pguillard CreditAttribution: pguillard commentedI put into one patch make-country-core-names-match-cldr.patch, make-country-core-list-match-cldr.patch and the changes to update-countries.sh code.
Comment #7
matsbla CreditAttribution: matsbla commentedTested and looked over, looks good!
Comment #8
catchNot sure we can remove a country code in a minor release. What exactly happens if this is already selected?
Comment #9
bojanz CreditAttribution: bojanz at Centarro commentedAlso, HM is still in the list despite being added to the script.
Comment #16
Liam MorlandPatch generated from today's CLDR using update-countries.sh. This patch updates names. It does not add or remove any codes.
The official CLDR JSON list of countries is now here:
https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/e...
Comment #18
jacktonkin CreditAttribution: jacktonkin at ISSUP commentedThe patch in #16 very similar to the one in #3044261: Update CLDR codes in CountryManager.php to latest data (35.1.0), which has recently been committed to core.
#1436754: Handle countries that have been removed from the CLDR standard (e.g: Netherlands Antilles) or changed (e.g.: Czechoslovakia (cs) => Czech (cz) | Slovakia (sk)) and #2036219: [policy] Inclusion criteria for CLDR territories in CountryManager::getStandardList() discuss removing Netherlands Antilles and/or Outlying Oceania from the list.