[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Qt 2.01



Из текстов qt 2.01:
-----------cut----------------
static const char * iso8859_5locales[] = {
    "bg", "bg_BG", "bulgarian", "mk", "mk_MK", /*"ru",*/ "ru_RU",
"ru_SU",
    "russian", "sp", "sp_YU", 0 };

// This is NOT CORRECT.  But so many Russians use this rather than the
// ISO standard that we default to this.  Russian users SHOULD set their
// $LANG to ru_RU.KOI8-R if they are not using the X default, but since
// they DON'T, we work around it, forcing the small number of iso8859-5
// users to set THEIR LANG to ru_RU.iso8859-5.  If you read the history,
// it seems that many Russians blame ISO and Peristroika for the
confusion.
//
// The real bug is that some programs break if the user specifies
// ru_RU.KOI8-R
//
static const char * koi8_rlocales[] = {
    "ru", 0 };
-----------cut-----------------
Автор этого, Warwick Allison, запутался окончательно. Он даже пробовал
огрызаться пару месяцев назад, хотел поставить KOI8-R вне закона, но
получил сдачи. Бедный Warwick!
На самом деле, насколько я понимаю, началось все с ребят из Red Hat.
Они, запутавшись в LANG, LINGUAS и LANGUAGE, устанавливают для русских
LANG=ru
LC_ALL=ru_SU
Ну, ru_SU несложно поменять на ru_RU.KOI8-R, здесь речь не об этом. Но!
Некоторые программеры (а именно те, которые работают с RH, а не SuSE)
обрадовавшись, начинают идентифицировать русскую locale по LANG. Таких
глупостей много в CVS KDE. После перехода на qt 2.0 с ее строгим (но
неудачным) контролем locale часть приложений KDE перестает работать с
русским и следуют претензии к Warwick. 
В нынешнем виде все это -- полная чушь, хоть и будет работать в
большинстве случаев.
Патчить нет никаких сил, потому что очень много и потому, что все авторы
хотят понять. А многие еще и считают себя специалистами по русским
кодировкам.
Думаю, впрочем, что это тенденция, и  скоро ru будет таки ru_RU.KOI8-R,
как в locale.alias от XFree 4.
Rgrds, AEN.