The Kyrgyz language on 'admin/settings/language/add' page is denominated 'Kirghiz(Кыргыз)', which is old 'soviet time' style name for the language. Correct way is 'Kyrgyz(Кыргызча)'. The added Kyrgyz language in Drupal for some reason has 'ky' two letter country code, meanwhile the correct code is 'kg'.

Officially the country's name is spelled with 'y' as a second letter - Kyrgyz Republic or Kyrgyzstan. The best way for the local indications would be internationally adopted two-letter country codes according to ISO–3166–1 (http://en.wikipedia.org/wiki/ISO_3166-1).

Comments

smk-ka’s picture

Project: Language Sections » Drupal core
Version: 6.x-1.x-dev » 6.x-dev
Component: User interface » language system

I am pretty sure you meant to assign this issue to Drupal.
Is it planned to fix the ISO codes in D6? This would also require moving 'Kongo' to 'cg' => 'Congo (Brazzaville)'.

EvanDonovan’s picture

Version: 6.x-dev » 7.x-dev

Should go in 7.x now...

webchick’s picture

Issue tags: +Novice

This sounds like it'd be pretty easy.

smk-ka’s picture

Looking at this issue again, I'm a bit confused now: it seems that the ISO 3166-1 Alpha-2 country code for Kyrgyzstan is different from its ISO-639-2 language code counterpart: while the country code is KG, the language code is ky. Since we're talking about language here, the current value of 'ky' (see _locale_get_predefined_list()) is correct, except for the spelling (see OP).

yngens’s picture

Well, we need to change the language code from 'ky' to 'kg'. Because 'ky' is a two-letter denomination of Cayman Islands: http://www.controloye.com/whois/ky.php Lot's of websites in Kyrgyzstan use 'kg' denomination in URL-addresses, not 'ky'. In fact nobody in Kyrgyzstan will agree or accept 'ky' abbreviation, so it will be very much confusing for website developers when they install Kyrgyz language in Drupal to see unusual path. It can negatively effect user's impression of Drupal. I believe if some codes were adopted by mistake in the past, Drupal should not repeat them.

psicomante’s picture

Status: Needs review » Active
StatusFileSize
new666 bytes

i'm sorry yngens but the code for country is correct: 'KG' (ISO 3166-1 alpha-2) for Kyrgyzstan and 'ky' (ISO 639-2) for Kyrgyz language. Anyway if you want to go against iso, here is the patch.

http://en.wikipedia.org/wiki/Kyrgyz_language

psicomante’s picture

Status: Active » Needs review
psicomante’s picture

StatusFileSize
new648 bytes

ooops wrong codification

dries’s picture

Status: Active » Fixed

Committed to CVS HEAD. Thanks.

yngens’s picture

Guys, you saved many Drupallers from Kyrgyzstan from frustration because of wrong language code. Thanks for committing!

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

CKoch’s picture

Status: Closed (fixed) » Active

function _locale_get_predefined_list() doesn't return a usable value for the Kongo language, as it's being overwritten by the pushed patch.

The applied patch MUST be reverted due to not following standards, and shadowing a language selection. The Kongo language is no longer in the list.
This should be fixed before any language code that relies on it is used (particularly for updating)

The issue here stems from yngens above misunderstanding the standards, and the difference between language and country.
If you install the Windows Kyrgys Language, it displays KY as expected in the language bar, it isn't a foreign abbreviation, even within the country.

In Short
Country Code (ISO 3166) Language Code (ISO 632)
Kyrgyzstan [KG] Kyrgyz [KY]
Congo [CG] Kongo [KG]
Cayman Is [KY] English [en_KY]

If this standard breaking patch is to remain, a new language code for Kongo must be invented.

damien tournoud’s picture

Category: task » bug
Priority: Normal » Critical
Status: Active » Reviewed & tested by the community

Indeed, please revert that. The official ISO639:2000 lists 'ky' for 'Kirghiz; Kyrgyz'. 'kg' is the 'Congo' language.

Patch #8 reverts properly.

dries’s picture

Status: Reviewed & tested by the community » Fixed

Reverted. Committed. Thanks.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

gábor hojtsy’s picture

Title: Locale code for Kyrgyz Republic should be changed from 'ky' to 'kg' » Change Kirghiz to Kyrgyz
Version: 7.x-dev » 6.x-dev
Priority: Critical » Normal
Status: Closed (fixed) » Patch (to be ported)

The language name change should be backported to Drupal 6.

yngens’s picture

Generally, a language code matches a respective country code. However, several codes for the national languages in officially adopted language code (ISO639:2000) have been confused. I asked this question before, but since unanswered have to repeat it once again:

Does Drupal have to repeat mistakes, which happened during adoption of language codes in the past? Could Drupal use http://en.wikipedia.org/wiki/ISO_3166-1 instead ISO639, which contains several mismatches between country codes and language codes?

gábor hojtsy’s picture

Well, http://en.wikipedia.org/wiki/ISO_3166-1 specifies codes for geographical areas not languages. We support languages not geographical areas. Language codes and geographical area codes are different in many cases, not just for this language. Can you point out if browsers like Firefox, Internet Explorer, Google Chrome, etc. use the country code in the HTTP headers instead of the language codes? We need to work as an interoperable part of the web, so we use language codes like we understand the rest of the industry does.

yngens’s picture

Status: Needs review » Patch (to be ported)

Those several nations with mismatched language codes are small ones, they even don't have browsers on their own languages, so it woud not matter. However, I see your point that Drupal should follow industry standards. Probably, the right thing to correct this unfortunate mistake is to appeal to the "upstream branch" - International Standard Organization, though it will be very much hard to get an international standard changed.

mdupont’s picture

Status: Patch (to be ported) » Needs review
StatusFileSize
new504 bytes

Attached patch for D6 to fix the spelling.

mdupont’s picture

StatusFileSize
new504 bytes

Using double quotes instead of single ones.

Thomas_Zahreddin’s picture

Title: Change Kirghiz to Kyrgyz » Change Kirghiz to KYRGYZSTAN;KG according to http://www.iso.org/iso/list-en1-semic-3.txt
StatusFileSize
new505 bytes

even the last patch is not right.

Despite of what some countries and libraries may think how something is spelled, check it form the original source

http://www.iso.org/iso/support/country_codes/iso_3166_code_lists/iso-316...

or from the list, as textfile: http://www.iso.org/iso/list-en1-semic-3.txt :

gábor hojtsy’s picture

Status: Needs review » Needs work

The name of *language* is Kyrgyzstan? That sounds like a country name.

Thomas_Zahreddin’s picture

Status: Needs work » Needs review
StatusFileSize
new505 bytes

Damm it, forgot to check and change the abbrevation too.

mdupont’s picture

Status: Needs review » Needs work

As mentioned in #18, ISO-3166 is about country names. We are dealing with languages names here. For language names, it's ISO-639. Kyrgyzstan has country code "kg" and Kyrgyz language has language code "ky".

gábor hojtsy’s picture

@mdupont: where does Drupal say we use ISO-639 for language codes?

Thomas_Zahreddin’s picture

Title: Change Kirghiz to KYRGYZSTAN;KG according to http://www.iso.org/iso/list-en1-semic-3.txt » Change Kirghiz to Kyrgyz
Status: Needs work » Needs review
StatusFileSize
new500 bytes

@Gábor Hojtsy / #23 of course you are right (and I should not create patches in a hurry).
#26 yes, if there exists a standard (and it is actualy in use), then we should use it.
(and why not use this standard, you did not mention another).

http://www.iso.org/iso/support/country_codes/iso_3166_code_lists/iso-316...

-> is for _country-codes_

for languages we have different perspectives:

http://en.wikipedia.org/wiki/ISO_639#The_six_parts_of_the_standard

so if we want to use a 2 diget code the right code should be

ky

http://en.wikipedia.org/wiki/Kyrgyz_language
acording to wikipedia, there a different transcriptions for the name of the language (i can't judge which one is best).

and the language in its Cyrillic alphabet is:

Кыргыз

(as far as I can see, best some native speaker checks this).

(so sorry for irritation)

means: only the name of the language should be changed as suggested in the original title of the issue

gábor hojtsy’s picture

Drupal 6 and 7 refer to RFC4646 for language codes (not ISO), Drupal 8 refers to W3C language tags (which deprecated RFC4646).

mdupont’s picture

@Gábor Hojtsy: My mistake. RFC4646 and W3C language tags borrow from ISO-639 but are not identical. However in both Kyrgyz language code is "ky".

mdupont’s picture

Status: Patch (to be ported) » Needs review

Let's fix this issue.

Current state in D8 (http://drupalcode.org/project/drupal.git/blob?f=core/includes/standard.inc)

'ky' => array('Kyrgyz', 'Кыргызча'),

Current state in D7 (http://drupalcode.org/project/drupal.git/blob/refs/heads/7.x:/includes/i...):

'ky' => array('Kyrgyz', 'Кыргызча'),

Current state in D6 (http://drupalcode.org/project/drupal.git/blob/refs/heads/6.x:/includes/l...):

"ky" => array("Kirghiz", "Кыргыз"),

Wikipedia (http://en.wikipedia.org/wiki/Kyrgyz_language) settled on the "kyrgyz" spelling (in line with the country name "Kyrgyzstan") although "kirghiz" is a widely accepted alternative spelling.

Also, in cyrillic "кыргыз тили" is used for "kyrgyz language" in both the above page and http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes, hence I guess we should use "кыргыз". Moreover one can also find the word "кыргыз" on http://people.w3.org/rishida/names/languages.html which is used as a reference for the language list in D7 (mentioned in a comment in includes/iso.inc), and "Кыргыз" is also used on http://localize.drupal.org/translate/languages/ky

That would mean we should use the following:

"ky" => array("Kyrgyz", "Кыргыз"),
azatkooman’s picture

@mdupont,

Thank you for contacting me on this issue.

I also think we need to use "Кыргыз" instead of "Кыргызча". The difference between two of them is that "Кыргызча" could be translated literally as "in Kyrgyz" i.e. when talking of some kind of a content.

mdupont’s picture

Title: Change Kirghiz to Kyrgyz » Use correct spelling for "Kyrgyz" in language list
Version: 6.x-dev » 8.x-dev
StatusFileSize
new500 bytes
new489 bytes
new594 bytes

Thanks azatkooman!

Here are the patches for all Drupal versions to provide the correct spelling in both latin and cyrillic alphabets. Reassigning the issue to D8.

yngens’s picture

azatkooman,

I believe you don't want to understand that we are talking here exactly in the context of languages. So when you see "English" in the list of the languages in Drupal it means not a man, person or any other noun, but what it exactly is a descriptive objective. Which is Кыргызча for Kyrgyz language. This rule is true for all the languages of turkic group of the languages. They all need -ча, -че, -ça, -çe suffixes in the end of language names. Examples are in already accepted language names in Drupal: Türkçe, Tatarça, Azerice, etc.

We have to follow linguistic norms here, not subjective speculations of who knows whom. So please don't spoil the name of Kyrgyz Language. The native name for Kyrgyz language is Kırgıça or in cyrillic Кыргызча and by no means you can call the language Кыргыз, though calling the language Kyrgyz in English is legitimate. But you have to clearly understand the Kyrgyz is only English name for the language, and that native name for the language is Кыргызча or Kırgıça with "ча" or "ça" in the end. This is so obvious that I am really surprised how difficult for some people to grasp the concept.

Please do not commit patches related to languages from anyone. This is important and sensitive matter. Let the people with linguistic background deal with this kind of matters.

yngens’s picture

Reposting from http://drupal.org/node/1028642#comment-5464910:

Gabor,

If you doubt, please see our efforts to put this right in upstream Linux community: https://bugs.freedesktop.org/show_bug.cgi?id=17505, https://bugs.freedesktop.org/show_bug.cgi?id=21451. We are dealing with Kyrgyz language since long.

Please look at http://ky.wikipedia.org/wiki/Кыргыз_тили - they call it, the language, "Kyrgyz" in English, but they never say Кыргыз in Kyrgyz language. They call it either Кыргызча or Кыргыз тили. I am native Kyrgyz myself. And believe me I know how my language is called in my native language. Simple rule - all the languages in turkic group add ча, че, ша or ça, çe, şa as suffixes in the end. You jus look at the list of the languages on the left block on http://en.wikipedia.org/wiki/Turkic_languages. I will list some of turkic languages:

Azərbaycanca (alternatively Azerbaycan dili)
Башҡортча (alternatively Башҡорт тили)
Қазақша (alternatıvely Қазақ тілі)
Кыргызча (alternatively Кыргыз тили)
Türkçe (alternatively Türk dili)
Татарча/Tatarça (alternatively Татар теле)
Uyghurche‎ (alternatively Uygur dili)

And I know that even your mother tongue is a member of Uralo Altaic group of languages and that ancestors of great Huns call their language not just Magyar, but Magyar nyelv. We, turkic people, call your language either Magar tili or Majarcha, Majarça.

Now go to any Drupal site and hit 'admin/settings/language/add', an then expand 'Custom language' and read: 'Language name in English' which is in our case 'Kyrgyz'. And then read next line: 'Native language name' and the explanation below the field: 'Name of the language in the language being added.'!!!!!!!!!

You, guys, a re going to screw up Drupal by confusing endonym with exonym. Want to know little bit more? Please read about the difference between them: http://en.wikipedia.org/wiki/Endonym

You may well call Kyrgyz language KYRGYZ in English, but in native language it never can be called just Kyrgyz (Кыргыз), it necessarily should be called Kyrgyzcha, Kırgızça, Кыргызча or Кыргыз тили, Kırgız tili.

Russian occupation screwed up many minds, we call persons with such minds Mankurts (http://www.freeman.org/m_online/may99/shusteff1.htm), those who forgot their own essence and nature up to that extend when they don't know who they really are. Let's not make Drupal - Mankurt CMS in the eyes of those who really care and pay attention to this kind of sensitive matters. Let's not go too much into politics. But you just do little bit research before going to name my language in my language Кыргыз. That will be a shame! I am Кыргыз as a person, however I am ready to give away my head to be cut on guillotine, but I insist that my language in my mother tongue should be called Кыргызча!!!!!!!

This is getting way too much ridiculous. Maybe I should address Dries himself?

gábor hojtsy’s picture

@yngens: I'm not sure how productive would be addressing Dries. If you believe that is the only way to solve your problem, then feel free to go ahead. Otherwise, our drupal.org issue process for solving these problems is to submit patch suggestions and trying to not bash everybody else at the same time, so we look credible and sensible to make progress. I understand the issue is near and dear to your heart Looks like as per your suggestion to name the language "Кыргызча" in its native form, Drupal 7 and Drupal 8 would already be fine but Drupal 6 would not? Right?

I've asked almost a year ago above to do that simple backport, see http://drupal.org/node/495030#comment-3969746 to have the proper native language name in Drupal 6 too. However, everything in the drupal.org issue queue works with consensus. In this case, we are referring to the standards used (W3C language codes, ISO, etc). You are referring to wikipedia pages in comparison. Why are the ISO standards and W3C all wrong?

yngens’s picture

Gabor,

Indeed the issue is little bit sensitive. I am pretty sure you also would raise your voice if in of the most popular CMS of the world they were going to give a wrong name to your mother tongue. And it is not that I am bashing everybody else or trying to jump over your head to Dries. I do know your role, contribution and your weight in the community, but I feel helpless when I tried to explain almost a year ago that the administration of the language had been given to a wrong person, who occasionally registered in Drupal.org and sold you all the previous Kyrgyz translation efforts of the Drupal made by our group as his own. And the problem was not only that you bought it, but also that despite our appeals you sent us to azatkooman and he never replied. What can one do when the language admin ignores your requests, the person who is administrative on him also ignores you?

Decisions should be based on sanity, and I am pretty much sure it would be perfectly sane if you would take a look who on drupal.org had been dealing with the issues related to Kyrgyz language and, at least, would consult such persons before just handing the administrative rights of the language group to a new occasional guy, who rarely participates in the community, moreover demonstrates complete incompetence both in complying with basic ethical norms like truthfully disclose required information (on where his got the translation http://drupal.org/node/1028642#comment-5459158) and in linguistic matters like to confuse endonym with exonym.

Now coming right into the matter of the subject, could you please refer to any International standard calling Kyrgyz language 'Кыргыз' in Kyrgyz language? International standards never dealt and never could deal with the ways how native people call their languages in their own languages! And I tried to demonstrate that one of the two names in Drupal is endonym. The first one is always English name for the language, which is in our case 'Kyrgyz', but the second one is endonym, that is how native speakers of a language name their language in their mother tongue.

We referenced several ISO standards on [495030] discussing Kyrgyz Language, and they are:

http://en.wikipedia.org/wiki/ISO_3166-1
http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
http://it.wikipedia.org/wiki/ISO_639-2
http://www.loc.gov/standards/iso639-2/php/code_list.php

and found out they are all about country codes, geographical areas, one of them dealt with language code, but none of them standardized how native people should name their languages on their own mother tongues. And it would be ridiculous if any International body tried that.

And to say frankly I find it ridiculous you are trying to find consensus between only two people: one myself, Drupal.org user since long time, who started translation of Drupal.org into Kyrgyz back in 2003, initiated several discussions regarding the language and the other is a pop-up guy who registered on Drupal.org in the beginning of 2011 just to take over the language group, no any single contribution to the community, who stole previous translations of the language and sold to you as his own. Is consensus should be sought in this kind of cases at all? Maybe you should require compliance with simple ethics first among two people before seeking consensus between them?

yngens’s picture

Issue summary: View changes

clean up

kscheirer’s picture

Issue tags: -Novice

#33: kyrgyz_spelling-495030-33.patch queued for re-testing.

Status: Needs review » Needs work
Issue tags: +Novice

The last submitted patch, kyrgyz_spelling-495030-33-D6.patch, failed testing.

jthorson’s picture

Status: Needs work » Needs review

Cancelled due to D6 patch testing against D8. Resetting status for the D8 patch.

socketwench’s picture

Issue summary: View changes
Issue tags: -Novice

Novice issue cleanup.

RickAPR’s picture

Assigned: Unassigned » RickAPR
RickAPR’s picture

Status: Needs review » Needs work

The last submitted patch, 33: kyrgyz_spelling-495030-33.patch, failed testing.

RickAPR’s picture

Test failed - settings no longer in core/includes/standard.inc file. Doesn't look like this is an issue in D8 anymore???
Language Code: Kyrgyz - ky
Country Code: Kyrgyzstan - KG

Not trying to cause any problems - I'm a novice addressing my first issue.

mgifford’s picture

Version: 8.0.x-dev » 8.1.x-dev
Assigned: RickAPR » Unassigned
Status: Needs work » Postponed (maintainer needs more info)

Unassigned issue. Maybe it can be closed too.

alexpott’s picture

Version: 8.1.x-dev » 8.0.x-dev
Status: Postponed (maintainer needs more info) » Closed (duplicate)

Well 'ky' => array('Kyrgyz', 'Кыргызча'), in LanguageManager::getStandardLanguageList()and 'KG' => t('Kyrgyzstan'), in CountryManager::getStandardList() shows that this has been fixed in accordance with the issue summary.

The patch in #33 is changing the back to the the Russian way of spelling. See https://en.wikipedia.org/wiki/Kyrgyzstan. It is likely the Drupal 6 is still incorrect but that is not going to be fixed now.

Closing because I think there is nothing more to do here. If I'm wrong and D8 or D7 still needs fixing please re-open but as far as I can see everything is correct.

alexpott’s picture

Status: Closed (duplicate) » Closed (fixed)

Actaully I don't think this is a dupe...