LINUX.ORG.RU

utf8 vs UTF-8

 ,


0

1

Перестал работать gdm, жалуется что invalid UTF-8. Начал разбираться, выяснилось что проблема в том, что в системе в разных местах намешаны «utf8» и «UTF-8».

morse@morseworkbook ~ $ locale -a
C
POSIX
en_US
en_US.iso88591
en_US.utf8
ru_RU
ru_RU.iso88595
ru_RU.utf8
russian
morse@morseworkbook ~ $ locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE=C
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
morse@morseworkbook ~ $ locale -a
C
POSIX
en_US
en_US.iso88591
en_US.utf8
ru_RU
ru_RU.iso88595
ru_RU.utf8
russian
morse@morseworkbook ~ $ cat /etc/locale.conf 
LANG=ru_RU.UTF-8
LC_COLLATE=C
morse@morseworkbook ~ $ cat /etc/locale.gen 
en_US ISO-8859-1
en_US.UTF-8 UTF-8
ru_RU ISO-8859-5
ru_RU.UTF-8 UTF-8
morse@morseworkbook ~ $ localectl
   System Locale: LANG=ru_RU.UTF-8
                  LC_COLLATE=C
       VC Keymap: ruwin_alt-UTF-8
      X11 Layout: n/a
Так как же правильно? И почему locale -a выдает utf8 хотя везде написано UTF-8? И как чинить?

★★★★★

Ответ на: комментарий от i_gnatenko_brain

gentoo.

А какая разница? Что, стандарт именования локалей свой для каждого дистра?

morse ★★★★★ ()

это нормально - внутреннее представление локалей в shell-е и в glibc различаются

Pinkbyte ★★★★★ ()

проблема в том, что в системе в разных местах намешаны «utf8» и «UTF-8»

Нет.

Перестал работать gdm, жалуется что invalid UTF-8.

Напиши багрепорт.

anonymous ()
Ответ на: комментарий от morse
brain@brain-ThinkPad-X230:~$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX
ru_RU.utf8
ru_UA.utf8

brain@brain-ThinkPad-X230:~$ locale
LANG=ru_RU.UTF-8
LANGUAGE=
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

вроде как всё норм

i_gnatenko_brain ★★★★ ()

И как чинить?

man localedef

ananas ★★★★★ ()
Ответ на: комментарий от druganddrop-2

Что? Проблема у ТС явно не в разном выводе locale и значении LANG

Pinkbyte ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.