LINUX.ORG.RU
ФорумTalks

[Qt][i18n][Ненависть] Кто бы мог подумать..

 , ,


0

0

что Qt в версии 4.6.2 читает локаль из LC_ALL и кладёт на всё остальное?

В результате если LC_ALL не выставлен, то QLocale::system().name() всегда возвращает «C».

И этот пример у них в офф. документации. Зарепортил багу. Приняли:

QLocale does not have a concept of mixed locales, so to detect the system locale on Unix systems it gets the content of the LC_ALL, LC_NUMERIC and LANG environment variables and uses the content of the first non-empty variable. That is not very reliable and not correct, but it has always been like that. It should be investigated how this can be improved without breaking too many applications.

Блин, такое чувство, что до меня никто на Qt не пытался писать приложение, которое подгружает перевод в зависимости от локали...

★★

>Блин, такое чувство, что до меня никто на Qt не пытался писать приложение, которое подгружает перевод в зависимости от локали...

Возможно

Zhbert ★★★★★
()

Блин, такое чувство, что до меня никто на Qt не пытался писать приложение, которое подгружает перевод в зависимости от локали...

Пробовал. Этот факт давно известен всем, а ты сейчас напоминаешь выпускника, делающего первые самостоятельные шаги в жизни и с удивлением обнаруживающего, что на все рабочие места ищут людей в опытом работы.

name_no ★★
()

> В результате если LC_ALL не выставлен, то QLocale::system().name() всегда возвращает «C».

Ты лжёшь. Такое происходит только если LC_ALL=".

shapka
()

> В результате если LC_ALL не выставлен

Если он не выставлен, то равен LANG, другое дело если выставлен в пустую строку...

Adjkru ★★★★★
()

> такое чувство, что до меня никто на Qt не пытался писать приложение, которое подгружает перевод в зависимости от локали...

Гораздо вероятнее, что такие приложения не разу не запускали на смешанной локали :)

Какой вообще смысл в смешанной локали? Получать сообщения по-русски, но отделять десятичную часть точкой? Тогда почему нельзя выставить LC_ALL во что-либо отличное от нулевой строки?

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

> Если он не выставлен, то равен LANG, другое дело если выставлен в пустую строку...

Видимо у него LANG выставлен в пустую строку :)

question4 ★★★★★
()

>Блин, такое чувство, что до меня никто на Qt не пытался писать приложение, которое подгружает перевод в зависимости от локали...

делать интерфейс в зависимости от локали и не давать его сменить - это дурацкое поведение
я предпочитаю видеть весь интерфейс и сообщения на английском языке - шрифты лучше, слова короче, hotkeys работают нормально

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

я предпочитаю видеть весь интерфейс и сообщения на английском языке - шрифты лучше, слова короче, hotkeys работают нормально

АР в линуксе такое А.

Fredrik
()
Ответ на: комментарий от name_no

> Пробовал. Этот факт давно известен всем,

...поэтому в документации мы о нём писать не будем?
...поэтому он очевиден?
...поэтому багу приняли?

а ты сейчас напоминаешь выпускника, делающего первые самостоятельные шаги в жизни и с удивлением обнаруживающего, что на все рабочие места ищут людей в опытом работы.


а кого напоминают разработчики библиотеки, доросшей до 4 версии, которые не в курсе про смешанные локали и которые кладут на $LANG?

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

Дурацкое поведение - это в каждом приложении делать настройки локализации. Если тебе хочется приложение на английском, ты делаешь export LANG=C,./app. Для того и придумано.

Человек, который установил определённую локаль, явно выразил своё желание видеть приложение быть локализованным.

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