LINUX.ORG.RU

Локаль с английским и «правильными» датами

 


0

2

Подскажите в какой стране используется английский язык, и при этом дата не «перепутана» как в en_US.UTF-8 (месяц/день/год)?

Желательно в «прямом» порядке (от большего к меньшему) — год, месяц, день, час, минута, секунда.


смотрю на en_GB, там дата хоть и перевёрнутая, но хотяб прямая — дд/мм/гггг, но эти слэши…, так я только больше путаюсь.

p3218
() автор топика

Можно глянуть тут.

{
  "en": "M/d/yy",
  "en-001": "dd/MM/y",
  "en-150": "dd/MM/y",
  "en-AG": "dd/MM/y",
  "en-AI": "dd/MM/y",
  "en-AS": "M/d/yy",
  "en-AT": "dd/MM/y",
  "en-AU": "d/M/yy",
  "en-BB": "dd/MM/y",
  "en-BE": "dd/MM/yy",
  "en-BI": "M/d/yy",
  "en-BM": "dd/MM/y",
  "en-BS": "dd/MM/y",
  "en-BW": "dd/MM/yy",
  "en-BZ": "dd/MM/yy",
  "en-CA": "y-MM-dd",
  "en-CC": "dd/MM/y",
  "en-CH": "dd/MM/y",
  "en-CK": "dd/MM/y",
  "en-CM": "dd/MM/y",
  "en-CX": "dd/MM/y",
  "en-CY": "dd/MM/y",
  "en-DE": "dd/MM/y",
  "en-DG": "dd/MM/y",
  "en-DK": "dd/MM/y",
  "en-DM": "dd/MM/y",
  "en-ER": "dd/MM/y",
  "en-FI": "dd/MM/y",
  "en-FJ": "dd/MM/y",
  "en-FK": "dd/MM/y",
  "en-FM": "dd/MM/y",
  "en-GB": "dd/MM/y",
  "en-GD": "dd/MM/y",
  "en-GG": "dd/MM/y",
  "en-GH": "dd/MM/y",
  "en-GI": "dd/MM/y",
  "en-GM": "dd/MM/y",
  "en-GU": "M/d/yy",
  "en-GY": "dd/MM/y",
  "en-HK": "d/M/y",
  "en-IE": "dd/MM/y",
  "en-IL": "dd/MM/y",
  "en-IM": "dd/MM/y",
  "en-IN": "dd/MM/yy",
  "en-IO": "dd/MM/y",
  "en-JE": "dd/MM/y",
  "en-JM": "dd/MM/y",
  "en-KE": "dd/MM/y",
  "en-KI": "dd/MM/y",
  "en-KN": "dd/MM/y",
  "en-KY": "dd/MM/y",
  "en-LC": "dd/MM/y",
  "en-LR": "dd/MM/y",
  "en-LS": "dd/MM/y",
  "en-MG": "dd/MM/y",
  "en-MH": "M/d/yy",
  "en-MO": "dd/MM/y",
  "en-MP": "M/d/yy",
  "en-MS": "dd/MM/y",
  "en-MT": "dd/MM/y",
  "en-MU": "dd/MM/y",
  "en-MW": "dd/MM/y",
  "en-MY": "dd/MM/y",
  "en-NA": "dd/MM/y",
  "en-NF": "dd/MM/y",
  "en-NG": "dd/MM/y",
  "en-NL": "dd/MM/y",
  "en-NR": "dd/MM/y",
  "en-NU": "dd/MM/y",
  "en-NZ": "d/MM/yy",
  "en-PG": "dd/MM/y",
  "en-PH": "dd/MM/y",
  "en-PK": "dd/MM/y",
  "en-PN": "dd/MM/y",
  "en-PR": "M/d/yy",
  "en-PW": "dd/MM/y",
  "en-RW": "dd/MM/y",
  "en-SB": "dd/MM/y",
  "en-SC": "dd/MM/y",
  "en-SD": "dd/MM/y",
  "en-SE": "y-MM-dd",
  "en-SG": "d/M/yy",
  "en-SH": "dd/MM/y",
  "en-SI": "dd/MM/y",
  "en-SL": "dd/MM/y",
  "en-SS": "dd/MM/y",
  "en-SX": "dd/MM/y",
  "en-SZ": "dd/MM/y",
  "en-TC": "dd/MM/y",
  "en-TK": "dd/MM/y",
  "en-TO": "dd/MM/y",
  "en-TT": "dd/MM/y",
  "en-TV": "dd/MM/y",
  "en-TZ": "dd/MM/y",
  "en-UG": "dd/MM/y",
  "en-UM": "M/d/yy",
  "en-US-POSIX": "M/d/yy",
  "en-VC": "dd/MM/y",
  "en-VG": "dd/MM/y",
  "en-VI": "M/d/yy",
  "en-VU": "dd/MM/y",
  "en-WS": "dd/MM/y",
  "en-ZA": "y/MM/dd",
  "en-ZM": "dd/MM/y",
  "en-ZW": "d/M/y"
}


console.log(
  JSON.stringify(
    require("fs")
      .readdirSync(
        require("path").resolve(
          require.resolve("cldr-dates-modern/main/en/ca-gregorian.json"),
          "..",
          "..",
        ),
      )
      .filter((locale) => locale.split("-")[0] === "en")
      .reduce(
        (acc, locale) => (
          (acc[
            locale
          ] = require(`cldr-dates-modern/main/${locale}/ca-gregorian.json`).main[
            locale
          ].dates.calendars.gregorian.dateFormats.short),
          acc
        ),
        {},
      ),
    null,
    2,
  ),
);

Deleted
()
Ответ на: комментарий от p3218

беглый гуглёж показал что оно больше мёртвое чем живое. Для дебчика пакета нет. И я не из России, «деньги-рубли», «неделя с понедельника» и тому-подобное в локале в общем подойдёт, но не особо нужно.

p3218
() автор топика
Ответ на: комментарий от Deleted

Можно глянуть тут.

спасибо. Особенно за приложенный вывод (плохо разбираюсь в js)

p3218
() автор топика
Ответ на: комментарий от Jopich1

Можно же выборочно указывать LC_DATE, LC_NUMERIC, etc ?

Это сработало если прописать export в .bashrc или .profile.

Кроме одной программки на рабочем ноуте, которая стартует демоном под рутом (у меня к сожалению нет рута на рабочем ноуте).

И на мобилке/планшете сложновато так гибко настроить.

p3218
() автор топика
Ответ на: комментарий от p3218

беглый гуглёж показал что оно больше мёртвое чем живое.

Можно поинтересоваться что именно ты нагуглил?

debugger ★★★★★
()

Дак ты не ленись, почитай международные стандарты ISO. Дата у него перепутана. Пошёл бухать дальше, нахрен этим новогодние каникулы. Всем удачи.

anonymous
()
Ответ на: комментарий от p3218

en_CA прокатит на андроиде, где форматы отдельно не настраиваются, но en_DK есть только в Debian (сделали там, может найтись и ещё где-то).

anonymous
()
Ответ на: комментарий от debugger

беглый гуглёж показал что оно больше мёртвое чем живое.

Можно поинтересоваться что именно ты нагуглил?

это я промахнулся и ответил сам себе, вместо сообщения от Thetan с предложением гуглить «en_RU».

p3218
() автор топика
Ответ на: комментарий от p3218

это я промахнулся и ответил сам себе, вместо сообщения от Thetan с предложением гуглить «en_RU».

Именно этим я и интересуюсь: что именно «больше мёртвое чем живое» ты нагуглил?

debugger ★★★★★
()
Ответ на: комментарий от p3218

_CA будет негодная ещё дюжину лет — что такое 10-11-12?

_DK нужно ставить избирательно(только в LC_TIME) — похоже там не все категории определены отчего некоторые программы падают.

DonkeyHot ★★★★★
()
Последнее исправление: DonkeyHot (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.