English-Europe locale missing

Bug #1850275 reported by Luca Ciavatta
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
GLibC
Confirmed
Medium
glibc (Ubuntu)
Invalid
Wishlist
Unassigned

Bug Description

Hello. I'm not reporting a 'bug', perhaps a missing feature.
I try to explain it. I would like to use my system with Italian locale and the English language, but it seems not considered. Usually, I choose English for language and Ireland for Time/Date/Currency and it works; but I'm wondering why it isn't contemplated the use of the English language for Italian users.

At least, why don't we insert English-Europe locale settings like in Windows systems?

Sorry for bothering and I hope that I explained well what I mean.
Thanks in advance for the time on it. Cheers.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: locales 2.27-3ubuntu1
ProcVersionSignature: Ubuntu 4.15.0-66.75-generic 4.15.18
Uname: Linux 4.15.0-66-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.7
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Tue Oct 29 10:18:17 2019
InstallationDate: Installed on 2019-10-24 (4 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
PackageArchitecture: all
SourcePackage: glibc
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
In , Digitalfreak (digitalfreak) wrote :

Following the previous discussion on the alpha mailing list [1] I suggest to introduce en_EU locale. It should be useful for the people who live in non-English speaking European countries but want to use the English user interface having their local settings for other things like metric system, paper size, etc. So far workaround solutions have been used like en_SE, en_DK, en_NL, also used in other countries. The en_EU locale would mean a generic European locale without favoring one or few countries. ISO currently marks EU country code as exceptionally reserved for European Union [2] which is kinda good but my initial idea was that EU may mean both European Union and whole Europe (including also non-EU countries). The yesexpr and noexpr entries should include the Y/N answers for as many languages as possible.

The idea is not to drop en_DK immediately although these locales can use "copy en_EU" if it makes sense.

[1] https://sourceware.org/ml/libc-alpha/2017-08/msg00308.html
[2] https://www.iso.org/obp/ui/

Revision history for this message
In , Andreas Schwab (schwab-linux-m68k) wrote :

Which of the several European local settings are "generic"? If you only want English messages you can already use LC_MESSAGES.

Revision history for this message
In , Egmont Koblinger (egmont-gmail) wrote :

Some aspects sound quite problematic to me.

What should be the decimal separator, the first day of the week, the currency etc. (let alone a few less important ones e.g. phone prefix, postal format)?

To second Andreas's point, what are the desired use cases to which setting separate LC_whatever variables isn't sufficient currently? Would an en_EU then be definitely sufficient for all these kinds of requests? Wouldn't something else, e.g. improving the way users could generate their own locales (tools, docs) a better solution?

If en_EU is added then shouldn't there be a fr_EU, de_EU etc., for ... for which languages exactly?

Revision history for this message
In , Digitalfreak (digitalfreak) wrote :

(In reply to Egmont Koblinger from comment #2)
> Some aspects sound quite problematic to me.
>
> What should be the decimal separator,

This is English so a comma "," most probably.

> the first day of the week,

I'd like to review some European locales but at the moment I lean into Monday as some ISO standard says.

> the currency etc.

Euro seems to be the most widely used currency in Europe.

> (let alone a few less important ones e.g. phone prefix, postal
> format)?

They should be left empty, probably. We had lots of trouble with some of these fields already, also including the ISBN code prefix. It turns out that some countries have multiple ISBN codes and multiple int_select prefixes. This has led us to questions whether any application actually uses these data.

> To second Andreas's point, what are the desired use cases to which setting
> separate LC_whatever variables isn't sufficient currently?

My guess is that users are not aware of the possibility to select separate LC_ variables or maybe the GUI support is insufficient.

> Would an en_EU
> then be definitely sufficient for all these kinds of requests?

For some maybe yes, for some this would be just the best they can achieve. Occasionally there are requests to add en_XX locale because there are people around Europe who want to use English even if this is neither their native language nor the language of their countries. Examples:

Bug 14085
https://bugs.launchpad.net/ubuntu/+source/langpack-locales/+bug/208548
http://rhea-ayase.eu/articles/2017-08/Upgrade-to-Fedora26

> Wouldn't
> something else, e.g. improving the way users could generate their own
> locales (tools, docs) a better solution?

Maybe improving GUI setups. But I'm not sure if this is possible The GUI setups tend to be simplified nowadays. I suspect their answer would be "no, we want the users to choose just a language and a country, not a series of geeky things like a paper format, date/time format, postal code format etc."

> If en_EU is added then shouldn't there be a fr_EU, de_EU etc., for ... for
> which languages exactly?

If only there are people who choose French (German) language for their computers because this is their favorite foreign language and they are not related with any French (German) speaking country... To be more precise: it should be a reasonably large group of people, we should not add a locale for just one or few persons. Honestly, I'm not aware of such people. But if there are any I guess that fr_FR (de_DE) would be a sufficient choice for them.

Revision history for this message
In , Keld Simonsen (keld) wrote :

I think we should follow the i18n locale very closely, and only deviate in the monetary
items.

I note that ISO in their English documents uses "," for decimal separator and "." for thousands separator.
So will almost all of the EU do after brexit.

Best regards
Keld

Revision history for this message
In , Pander (pander) wrote :

As the maintainer of en_NL, I think an en_EU will not work as local formats differ per country and only add confusion. I do support creation of en_DE, en_SE and other English versions for EU countries, under the condition that as much reuse of existing locales is being done as is practically possible. From experience, I know that will only work for about 8 of the 12 locale categories.

Revision history for this message
In , Digitalfreak (digitalfreak) wrote :

There is no en_NL locale in glibc. I believe you are talking about a different project, maybe about some non-upstream patches for glibc. Of course, localedef tool exists in order to allow the users build and use their own locales, even without the root permissions. So you may have and use whatever locale you want. However, I'm trying here to avoid inflation of locales. The problem is that each new locale, even if it source code is short and easy to implement, makes about 2 MB binaries. This multiplied by about 200 or 300 locales we currently provide may make a problem. Distros are already complaining about it because the locale binaries take too much space both in installation media and in the users' computers.

Of course, en_EU will not work for everyone. Even if it works for 8 or 12 countries I'd be satisfied.

Revision history for this message
In , Pander (pander) wrote :

I understand that the footprint needs to be as minimal as possible, and I'm thinking how we could solve that the best. For example https://www.sourceware.org/bugzilla/show_bug.cgi?id=24006 would enable more minimization when needed.

Also https://www.sourceware.org/bugzilla/show_bug.cgi?id=14641 would free up some space.

en_NL is indeed not in glibc, as is en_DE and en_SE. Only en_DK is, because it was introduced early on. To reduce size and accommodate more practical use, I would sooner propose removing li_NL, nds_NL, nds_DE and alike. See also https://www.sourceware.org/bugzilla/show_bug.cgi?id=23857 for reasons.

There are more and more users in EU countries using their system in English (and prefer to have correct support for their locale datetime, currency, etc.) than there are users that want to use their system in their very very local language such as:
- Upper Sorbian (hsb_DE)
- Lower Sorbian (dsb_DE)-
- Low German/Saxon/Nedersaksisch (nds_DE and nds_NL)
- Frisian (fy_DE and fy_NL)
- Limburgs (li_NL and li_BE)
which don't even have a spell checker or wide localization of applications. These locales have practically no users, whereas most developers in EU countries work in the English language but are in need of proper support of datetime, currenct, etc.

Perhaps even join fr_BE and wa_BE, to free up even more space.

Locale en_EU is gonna give a lot of confusion, remarks and struggles over which exact formats should be used, as they differ substantially among EU countries, even/especially the larger countries.

In my opinion, better to trade the before mentioned locales for en_DE, en_SE, en_NE, etc.

Revision history for this message
Luca Ciavatta (cialu) wrote :
affects: glibc (Ubuntu) → language-selector (Ubuntu)
Revision history for this message
Gunnar Hjalmarsson (gunnarhj) wrote :

This is indeed a glibc thing, Sebastien.

And it has been discussed upstream a lot, for instance in <https://sourceware.org/bugzilla/show_bug.cgi?id=22473>. Awaiting the result of that discussion, we won't implement any Ubuntu only locales in Ubuntu.

@Luca: As you mentioned, there are ways to achieve approximately what you want. You mentioned the Irish locale, and there is also the en_DK.UTF-8 locale which actually was created to serve as a European English locale.

affects: language-selector (Ubuntu) → glibc (Ubuntu)
Changed in glibc (Ubuntu):
importance: Undecided → Wishlist
status: New → Confirmed
Revision history for this message
Luca Ciavatta (cialu) wrote :

@gunnarhj nice to hear about the upstream discussion and thank you for the suggestion.

Revision history for this message
Steve Langasek (vorlon) wrote :

glibc locale codes are defined by a combination of language and country. There is no "English-Europe" locale and no way to specify this, it cannot be missing.

You have the option of using the en_DK locale, which uses Denmark as a proxy for "generic country where English is not spoken natively." But in general, if you are not happy with the en_GB or en_US locales, it is because of some aspect of locales /other than language/ (such as currency, numeric separator, date format, etc) and you should configure the individual locale variables according to your preference instead of expecting glibc to provide a locale that exactly matches your personal preferences rather than being based on a national standard.

Changed in glibc (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
Luca Ciavatta (cialu) wrote :

@vorlon I understand what you said and I already found different working workarounds. But as stated it is a missing thing useful to many people and it could be solved providing locales for en_IT, en_DE, en_SE, en_NE, etc. as suggested on upstream discussion or providing a generic en_EU locale suitable for all the European countries that don't have English as the primary language.

This is only a suggested feature, I can work with Ubuntu using a workaround as I did till today. And also others.

Changed in glibc:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
In , Sergio Callegari (callegar) wrote :

I understand that there is a standard en_150 locale that works as English (Europe) and that would do what is being asked. Would it make sense to have this one in libc?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.