Чому не існує мови «євро англійська»?


93

Я використовував дещо примхливий en_DK.UTF-8локал під час встановлення нової системи, тому що це дало б (приблизно) результати, які я хотів знайти, хоча я не в Данії.

  • Вимірювальна метрика
  • Чутливі формати дати та часу, але назви днів та місяців англійською мовою
    • 24-годинний формат часу
    • Робочий тиждень починається з понеділка
    • Числова дата (приблизно, щонайменше нагадує) ISO-формат, рр-мм-дд
    • Неофіційна дата - дд / мм, не навпаки
  • Розмір паперу формату A4
  • Валюта євро
  • Системні повідомлення англійською мовою

На жаль, Ubuntu та Debian вже не підтримують en_DKлокаль. Я думав, що має бути щось на кшталт en_EU"Euro English".

У кожному місці, де я працював, були такі вимоги - офіційна мова організації - англійська, але ми хочемо континентальних європейських стандартних налаштувань для всього іншого.

Я уявляю, що я не перша людина, яка думає, що англійська мова про "агностик локації" принесе користь і мені особисто, і організаціям, в яких я працюю. То чому його не існує, і де я шукаю подальші дискусії та обґрунтування?

... Або я повинен іти вперед і пропонувати це? Кому?


1
Я впевнений, що це було б гарним питанням десь у мережі StackExchange, але це насправді не проблема програмування, чи не так?

1
Ви мене тут плутаєте. Данія ніколи не приймала Євро AFAIK, і тестування Debian, і нестабільні досі мають місце en_DK (з валютою DKK / kr)
Stéphane Chazelas

1
Насправді я просто жив із тим, що в ньому неправильна валюта; Мені ця функція дійсно не потрібна, але вона постала як одна з речей, яку слід включити у запитання заради повноти. Цей en_DKлокал викликає дивну цікавість; звідки вона походить, і чому для інших країн немає випадкових англійських мов? Навряд чи так, як у Данії є надзвичайно високий коефіцієнт володіння англійською мовою.
трійка

5
@Jeach: хто втратить контроль? Над чим? Це погано? Чому суверенна держава є доброю та / або єдиною прийнятною стороною для цього? Іспанські налаштування для Північної Америки звучать досить аналогічно моєму сценарію; Я майже впевнений, що на це буде попит. І я не бачу, чому також слід виключити сценарій Кри, хоча попит у реальному світі був би розумною вимогою з боку органу стандартизації.
трійка

2
Я співчуваю, але мене також цікавить, що ви пишете "організацію" з написанням, характерним для двох-трьох країн (наприклад, en_US, можливо, en_CA), а не так, як більшість носіїв англійської мови зробили б у світі. Справжнє рішення, IMHO, - це мати окремі налаштування для різних контекстів. Наприклад, коли я живу в США, я вважаю за краще використовувати звичайні англійські та стандартні вимірювання, але розміри паперу в США. Той факт, що американці називають свої незвичайні вимірювання «англійськими», додає плутанини, хоча англійці використовували в основному метрику протягом десятиліть, і багато їх одиниць відрізнялися від американських.
Майкл Шепер

Відповіді:


13

(a) Суб'єкт, відомий як загальне сховище даних локальної бази Unicode, схоже, є місцем, яке обробляє локалі. Вікі glibc вказує, що вони дотримуватимуться CLDR .

(b) У них є локаль, відомий як "en_150", який, здається, призначений робити те, що ви хочете. Я не впевнений, що glibc це ще реалізував. Існує також аналогічний локал, відомий як en_BE, який ідентичний en_150, за винятком того, що він має регіональне покриття BE, а не в усьому світі.



Цікаво, але я спробував export LC_TIME=en_150.UTF-8(і en_BE) на Xubuntu 14.04 LTS і він відображаєbash: warning: setlocale: LC_TIME: cannot change locale (en_150.UTF-8): No such file or directory
baptx

79

en_IE.UTF-8 Англійська мова (Ірландія) має всі необхідні речі:

  • Показники вимірювань - так
  • 24-годинний формат часу - так
  • Робочий тиждень починається з понеділка - так
  • Цифрова дата в (принаймні, що нагадує) формат ISO, yyyy-mm-dd - ні , це ця локаль dd/mm/yy. Але це здається досить близьким до того, до чого ти звик
  • Неофіційна дата - дд / мм, не навпаки - так
  • Розмір паперу формату А4 - так
  • Валюта євро - так
  • Системні повідомлення англійською мовою - так

Я фактично використовую цю локаль, хоча я в Амстердамі, оскільки не існує англійської (паненевропейської) мови, про яку я знаю.

До речі. не помиляйтесь, вибираючи ga_IE.UTF-8ірландську (Ірландію) мову, оскільки це ірландська гельська мова.


1
Ах, старий добрий ірландець! Чудова знахідка.

3
Я приймаю цю відповідь, оскільки вона вирішує проблему на моє повне задоволення. Я все ще хотів би знайти вказівки на те, чи пропонувався раніше "універсальний англійський" локал та / або куди слід надсилати таку пропозицію. Частина цього питання стандартизації бібліотеки є причиною того, що я спочатку розмістив її в PSE, але не знаю, чи підходить вона там (або де-небудь ще в мережі * SE).
трійка

@tripleee: єдине, що спадає на думку, це загальноєвропейська версія Windows 98, яка була англійською мовою, але з європейською мовою та підтримкою європейських символів. Я не чув про жодних спроб створити офіційний пан-євро.
vartec

Я набрав команду "sudo update-locale LANG = en_IE.UTF-8 LC_MESSAGES = POSIX", і після перезавантаження, коли ви відповідаєте на електронний лист із Thunderbird, він використовуватиме стандартні dd / mm / yy, а не yyyy-mm-dd ( Я спробував з Ubuntu 14.04 та Thunderbird 31.1.2).
baptx

Для універсальної англійської мови може знадобитися розглянути тисячі окремо. Так, всі (рідні) мовці англійської мови використовують коску (я думаю?), Але багато європейців використовують період ( .), навіть коли пишуть англійською. Я починаю переконатись, що апостроф '(вживається швейцарцями) з .дробовою частиною буде хорошим кандидатом. Він працює у файлах csv, і я не знаю ніде, де використовується 'дробові числа.
Аарон Макдейд

9

Локал en_DK насправді не має нічого спільного з Данією, окрім назви. Спочатку його створив хтось, хто хотів те саме, що і тут, просили - розумний набір стандартних умов для англійського, хто виступав у Європі. Назва "en_DK" - це свого роду жарт - всі назви локалів у той час складалися з мовного коду та коду країни (на другій позиції не було кодів континенту чи нічого іншого), і з будь-якої причини Данія була обрана як код країни-заповнювача. (... і, мабуть, з тих пір змусило більше одного загадкованого людини дослідити частку людей у ​​Данії, першою мовою якої є англійська. :))


5
Чи є у вас джерело для обрання ДК примхливо? (Я згоден, що це єдиний локальний пункт з розумними налаштуваннями ...)
Селада,

1
Погодьтеся, що ця відповідь виграє хоча б анекдотичні покажчики для подальших досліджень. Але спасибі за цей ласощі вже.
трійка

Мабуть, є місце en_DK у юнікоді
sanmai

1
Єдина проблема полягає в тому, що він використовує DKK як валюту.
Ален Сіляк

4

Ось чому ви використовуєте різні мови для різних речей.

У моєму випадку я змішую en_GB та sv_SE, щоб отримати те, що мені потрібно, і це виглядає приблизно так:

$> locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC=sv_SE.utf8
LC_TIME=sv_SE.utf8
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY=sv_SE.utf8
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER=sv_SE.utf8
LC_NAME=sv_SE.UTF-8
LC_ADDRESS=sv_SE.UTF-8
LC_TELEPHONE=sv_SE.UTF-8
LC_MEASUREMENT=sv_SE.utf8
LC_IDENTIFICATION=sv_SE.UTF-8
LC_ALL=

Але ви, мабуть, заміните sv_SE на dk_DK.

І щоб отримати €, використовуйте LC_MONETARY = en_IE.UTF-8

Потім я зберігаю свою конфігурацію як багато експорту в ~ / .profile

export LC_MONETARY="en_IE.UTF-8"

Це дасть вам можливість вибрати «правильні» речі з різних областей.


Я б насправді не замінити sv_SEз dk_DK- як я вже говорив в моєму питанні, я вибрав датські настройки , тому що вони випадково і кілька смутно запропонували функції , які я хотів, хоча я не повинні мати нічого конкретного в Данію в моїх настройках немає причин або бажань, і насправді я цього намагаюся уникати. Дещо подібне, sv_SEмає сенс (якийсь) сенс LC_TIMEнезалежно від того, де ви знаходитесь у світі, оскільки Швеція використовує стандартні дати ISO, на відміну від багатьох інших місцевостей.
tripleee

3

Власне, я вважаю, що існує локаль, який краще відповідає вашим вимогам, ніж en_IE. Це неофіційно, але це так en_SE.UTF-8. Це посилання, яке вказує на файл локалів.

В основному він копіює sv-SE, який повинен отримати все, що ви хочете (хоча я ще не перевіряв), але дає вам англійські системні повідомлення, меню тощо. Я використовував це раніше, і він дуже добре працював для мене практикуйте, незважаючи на застереження у блоці коментарів у верхній частині файлу.

Щоб встановити:

  1. завантажте так, щоб файл локалів був доступний як /usr/share/i18n/locales/en_SE
  2. бігати sudo localedef -i en_SE -f UTF-8 en_SE.UTF-8
  3. додати до /var/lib/locales/supported.d/localрядка en_SE.UTF-8 UTF-8(може бути різним на основі розподілу; Debian Squeeze / 6.0, здається, задоволений /etc/locale.gen)
  4. бігати sudo locale-gen
  5. встановіть для системи або облікового запису за замовчуванням значення en_SE.UTF-8(наприклад, через /etc/default/localeсистеми, схожі на Debian)
  6. перезавантажте або вийдіть із системи та ввімкніть знову, щоб активувати нову локаль

6
Але Швеція не прийняла €.
mouviciel

@mouviciel Чи Ірландія?
CVn


1
Крім того, це має певний недолік (разом з тим en_DK), що це безперечно нечітке рішення для людей, які не проживають у цій конкретній країні. Ви можете стверджувати, що en_IEі ця (додаткова) вимога не повністю переходить; але, принаймні, можна логічно міркувати про проблему і доходити до цього як досить справедливого висновку (хоча я особисто цього не доходив, грунтуючись на декількох помилкових припущеннях про те, як це робиться в Ірландії).
трійка

1
Крім того, локал подорожує з вами, коли ви переходите sshдо віддалених систем, і ви отримаєте всілякі набридливі попередження, якщо ваш локальний каталог також не встановлений у віддаленій системі.
трійка

1

я використовую en_IE@euro ISO-8859-15

$ export LC_MONETARY= "en_IE@euro ISO-8859-15" 

... але я не зовсім впевнений у вимірах, зважаючи на використання nl_NL.UTF-8або nl_BE.UTF-8, єдине питання, що виникає з цим, - коли я дозволяю такій бібліотеці, інші програми можуть в кінцевому підсумку використовувати її як орієнтир для локальної lib і знову почати завантажувати програми і сервісом голландською або навіть німецькою мовами.

Вчора ввечері winetricks загнав мене до стіни, vcrun6навіть змінивши locale-genвидалення будь-якого натяку на німецьку lib, вона все ще продовжувала завантажувати німецьку версію redistributablec++, врешті-решт це зробила вручну, повністю запустивши exe з вином.

Неймовірно, що я знову тут над тим же питанням; на цей раз APT, і місцеве бельгійське пекло Repo схилилося до редагування моєї конфігурації локальної системи, але це не може, тому що я редагував дозволи, тому замість цього я просто отримую скарги на помилки:

Fetched 207 kB in 0s (1381 kB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "en",
    LC_ALL = (unset),
    LC_TIME = "nl_BE.UTF-8",
    LC_MONETARY = "en_IE@euro ISO-8859-15",
    LC_ADDRESS = "nl_BE.UTF-8",
    LC_TELEPHONE = "nl_BE.UTF-8",
    LC_MESSAGES = "en_IE.UTF-8",
    LC_NAME = "en_IE.UTF-8",
    LC_MEASUREMENT = "nl_BE.UTF-8",
    LC_IDENTIFICATION = "en_GB.UTF-8",
    LC_NUMERIC = "nl_BE.UTF-8",
    LC_PAPER = "en_IE.UTF-8",
    LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
locale: Cannot set LC_ALL to default locale: No such file or directory 

Ніяких компромісів, все або нічого .. єдиним іншим рішенням було б змінити репо, я думаю, але я ніколи не буду повністю безпроблемним, оскільки клавіатура АЗЕРТЕТ, і за законом це лише французька бельгійська голландська ....: ' (


Це звучить дивно. Параметри LC_MONETARYабо LC_MEASUREMENT, звичайно, не повинні впливати на мову каталогу повідомлень.
tripleee

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.