Используйте формат времени и даты ISO в KDE 5
6 ответов
Я считаю, что en_SE полностью совместим с ISO: ГГГГ-ММ-ДД ЧЧ: ММ (24 ч)
Тогда как для меня en_DK использует ДД / ММ / ГГГГ ЧЧ.ММ (24 ч), который не соответствует ISO как в порядке дат (это просто порядок в Западной Европе), так и в разделителе времени.
en_CA также использует YYYY-MM-DD чч: мм (12 ч), но использует AM/PM, а не 24 ч.
Протестировано на KDE Plasma 5.11.3, работает на Arch Linux.
Нет, это невозможно. Невозможно вручную установить форматы, как это было возможно в KDE4. Вы всегда должны выбирать локаль для каждой категории (число, время, валюта, единицы, сопоставление)
К сожалению, установка более совместимого с стандартами языкового стандарта (например, en_DK или en_NL) не помогает. KDE5 использует свой собственный список локалей, игнорируя системные локали.
Для настольных часов вы можете установить формат даты и времени отдельно от системного формата в более новой версии KDE 5.
vi /usr/share/plasma/plasmoids/org.kde.plasma.digitalclock/contents/ui/DigitalClock.qml
- dateLabel.text = Qt.formatDate(main.currentTime, main.dateFormat);
+ dateLabel.text = Qt.formatDate(main.currentTime, "dd-MMM-yyyy");
Взято из https://www.ulduzsoft.com/2017/08/custom-date-configuration-in-kde-plasma-digital-clocks/
Одна локаль, которая использует временные метки ISO 8601, это en_DK.
Я предполагаю, что KDE 5 вернулся к механизму локали POSIX для согласованности. KDE 4 был странным - практически все другие программы используют настройки локали в формате POSIX с предопределенными форматами. (Это означает, что настройки будут понятны и не-KDE программам.)
Если KDE не перечисляет en_DK, grep выводит locale -a
проверить, является ли en_DK.utf8
Товар доступен. Если это не так, в Debian/Ubuntu вы сможете добавить его через dpkg-reconfigure locales
, На других дистрибутивах, если есть /etc/locale.gen
, добавьте (или раскомментируйте) следующие строки:
en_DK.UTF-8 UTF-8
en_DK ISO-8859-1
Бежать locale-gen
перестроить.
Если KDE все еще не перечисляет en_DK несмотря на locale -a
показывая его, вы все равно сможете установить его глобально. Приведенные выше форматы напрямую соответствуют переменным окружения POSIX:
- Регион →
LANG
- Номера →
LC_NUMERIC
- Время →
LC_TIME
- Валюта →
LC_MONETARY
- Единицы →
LC_MEASUREMENT
- Сортировка →
LC_COLLATE
Общесистемное расположение для них варьируется. Часто вы можете установить их через localectl
:
localectl set-locale LANG="en_US.UTF-8" LC_TIME="en_DK.UTF-8"
Иногда вам придется редактировать /etc/locale.conf
, /etc/default/locale
, или похожие.
Для каждого пользователя то же самое можно установить в ~/.pam_environment
, ~/.profile
, ~/.bash_profile
, или похожие.
Я обнаружил, что выбор Canada - Canadian English (en_CA)
делает краткий формат ISO:
- 2017-09-15 12:26 вечера
- Пятница, 15 сентября 2017 г. 12:25:34 GMT
en_SE у меня отлично работает. В AUR также доступен пакет en_se для его общесистемной установки.