Bug 6781

Summary: [FR] language/locale choice reloaded
Product: Sisyphus Reporter: Michael Shigorin <mike>
Component: alterator-sysconfigAssignee: Nobody's working on this, feel free to take it <nobody>
Status: NEW --- QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P3 CC: boyarsh, cas, dobr, egor, eostapets, kirill, kopilo4ka, lav, ldv, legion, mike, mithraen, rider, snejok, svd
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 6863, 7183, 17728, 21852    

Description Michael Shigorin 2005-05-04 16:06:18 MSD
Вот, по мотивам обсуждения в #6630 порылся в архиве и решил повесить сюда то,
что в своё время придумалось и показалось интересным вариантом.

2 zerg: сорри, предполагалось, что это будет на alterator... продолжаю
обдумывать этот момент.

---

Предлагается в качестве одного из системообразующих вопросов использовать не
выбор _языка системы_, а выбор _основной локали_ (бишь языка _и_ местности)
системы.  Это решает ряд концептуальных и практических проблем, которые
создаются при подмене этих понятий -- в силу их неравноценности и даже
отсутствия одностороннего отношения "один-ко-многим" в общем случае (у нас уже
достаточно общий, чтобы это было заметно).

Применительно к текущему инсталятору (на примере 2.9.9.5) это может выглядеть так:

имея вопросы про

0. язык (syslinux)
1. язык установки (install2, если не дано в п.0)

заменяем

2. дополнительные языки (install2)
3. часовой пояс (install3)

на

2. место пребывания системы -- страна/город
3. полный набор _локалей_, которые будут установлены в систему, и выбор основной
(install2)

и из ответа на "место пребывания" (location) вытаскиваем сразу пачку ответов на
следующие вопросы:

- часовой пояс (уже задаётся, но список городов невелик => сам по себе ответ для
большинства дополнительных целей неприменим);
- ближайший NTP-сервер;
- ближайшее зеркало.

Это то, что хорошо бы иметь уже сейчас (в Ubuntu и то есть автоопределялка
ближайшего зеркала по ping).  Это мелочи, которые сами по себе того не стоят --
но: наличие достаточно точного (не +/- полстраны) ответа на вопрос "где вы?"
создаёт платформу для решения также следующих задач, которые сейчас рутинно (не)
решаются администратором либо вообще оставлены на волю случая:

- идентификатор метеостанции для получения информации о погоде;
- ближайший LUG (в т.ч. "кто тут рядом с ALT" при явно означенном согласии
публиковать своё местоположение) и, возможно, иные ресурсы, имеющие смысл в
заданном территориальном контексте;
- настройки местных ISP (начиная с dialup);
- местные поставщики услуг, которых можно рекомендовать на тех или иных
основаниях (предыдущий пункт сюда тоже может входить).

Это лишь набросок, который показывает, для чего имеет смысл решать данную
техническую задачу иным образом, чем это делается традиционно: другой уровень
возможностей координации и сотрудничества, а также коммерческого смысла в
сертификации третьих фирм, предоставляющих услуги.
Comment 1 Vyacheslav Dikonov 2005-05-04 21:13:00 MSD
Желательно не терять возможности добавить дополнительные языки. Это нужно всем,
кто владеет иностранными языками (кроме попсового английского) или живет в
местности, где распространен совсем другой язык. Например русские в Германии,
указывали бы русский, немецкий и место - Германия. Английская раскладка при этом
не нужна.
Comment 2 Michael Shigorin 2005-05-04 23:41:44 MSD
> Желательно не терять возможности добавить дополнительные языки.

Локали (сортировка там) или языки?  В инсталяторе или за жизнь системы?..

Впрочем, не торопись -- тут есть ещё пачка мыслей, мы сегодня с sr@ полдня над
этим (и этим тоже) думали и дискутировали.  Оформлю и добавлю здесь и/или на wiki.
Comment 3 kirill 2005-05-05 00:04:01 MSD
Стоило бы начать с чёткой формулировки, что такое локаль и -- главное! -- зачем 
она нужна (зачем такое понятие появилось в ОС). По известным мне обсуждениям
понятно, что представления об этом самые туманные и очень разные.
Видимо, хотя бы кому-то всё-таки стоит исследовать, что такое локаль, самым
внимательным образом.

Что такое локаль
----------------

Изложу своё дилетантское (но филологическое ;) представление.
(Длинно, но важно, надеюсь, что хотя бы Миша прочтёт не торопясь ;)

Локаль объединяет в себе несколько разнородных вещей из области ввода и вывода
текста. В частности: 

- язык. Функции в ОС: 
  + система ввода (раскладки клавиатуры, кодировки), 
  + отображения (шрифты, переводы _стандартных_ системных сообщений 
    и прочих системных понятий на этот язык), 
  ? верификации (словари для проверки орфографии). ...

- ``национальные стандарты'', т. е. способы оформления (графического,
типографского, словесного) общечеловеческих понятий: дата, число, мера длины и
т. п. Поскольку такие традиции оформления часто (не не всегда!) привязаны 
к национальным традициям, государству, то отсюда в локаль проникает понятие 
``страна''. 
 Функции в ОС:
  + вывод всех перечисленных общечеловеческих понятий в соответствии с выбранной 
    ``национальной'' традицией

Хочу подчеркнуть, что с такой ``функциональной'' точки зрения страна в локали -- 
это ни в коем случае не место физического расположения компьютера, а способ 
оформления дат и т. п., который предпочитает пользователь.

По этой причине понятия ``язык'' и ``страна'' в локали не являются независимыми.
Просто потому, что оформлять даты и пр. нужно не только в соответствии с
традицией, но и _на каком-то языке_. Обычно ``национальная'' традиция оформления
таких вещей как даты представлена на одном--нескольких ``официальных'' языках,
но отнюдь _не на всех языках_, которые существуют на территории данного
государства. Все пользователи ``неофициальных'' языков просто пользуются
официальными для оформления этих вещей.

Теперь про Мишино предложение.
------------------------------

Мне нравится идея ввести системное понятие ``местоположение'', в которое
включить перечисленные Мишей вещи: 
- часовой пояс
- ближайший NTP-сервер
- ближайшее зеркало
- ближайший LUG 
etc.

Вопрос: зачем смешивать понятие ``страна'', взятое из локали (которое, как 
я пытался показать выше, нужно совсем для другого и только по недоразумению
совпадает с географическим понятием), и понятие ``местонахождение''?

Предложение: давайте сделаем отдельное понятие ``местонахождение'', привязав к
нему предложенные Мишей усовершенствования, которые действительно связаны с 
_географическим местоположением компьютера_. Это стоит сделать отедльным 
модулем к alterator, так чтобы можно было местоположение поменять в любой момент
(приехав на Украину со своим ноутбуком я тотчас захочу это сделать, заметим, 
не меняя локали).  По-моему, это будет очень удобное и полезное нововведение.
Comment 4 Sergey V Turchin 2005-06-08 13:20:23 MSD
(In reply to comment #3) 
 
[...] 
 
> - часовой пояс 
> - ближайший NTP-сервер 
Нет проблем. Давайте списки серверов для всех поясов. 
Comment 5 Michael Shigorin 2005-06-08 13:24:08 MSD
(In reply to comment #4)
> > - часовой пояс 
> > - ближайший NTP-сервер 
> Нет проблем. Давайте списки серверов для всех поясов. 
Так сервер -- это "ближайший", а не "для пояса" :-)  Я отсюда и на
ntp1.zenon.net могу ходить, да ntp.lucky.net ближе.
Comment 6 Vitaly Lipatov 2005-06-08 22:05:50 MSD
А мне вот всё равно где находится сервер времени, разницу в точности я уловить 
не смогу, поэтому я только за то, чтобы ntp работал из коробки и 
синхронизировал время при наличии соединения, и в случае dialup - при 
подключении (тут уж через ntpdate только)... 
Comment 7 Sergey V Turchin 2005-06-14 15:50:46 MSD
(In reply to comment #5) 
> (In reply to comment #4) 
> > > - часовой пояс  
> > > - ближайший NTP-сервер  
> > Нет проблем. Давайте списки серверов для всех поясов.  
> Так сервер -- это "ближайший", а не "для пояса" :-)  Я отсюда и на 
> ntp1.zenon.net могу ходить, да ntp.lucky.net ближе. 
Ну, для каждого города из списка. 
Для самого ближайшего есть редактируемое поле ввода. 
 
Comment 8 Sergey V Turchin 2005-06-23 17:15:28 MSD
(In reply to comment #3) 
> По-моему, это будет очень удобное и полезное нововведение. 
У нас еще многих старовведений не хватает :-) 
 
 
Comment 9 wiee 2005-07-21 21:36:28 MSD
*** Bug 7416 has been marked as a duplicate of this bug. ***
Comment 10 Michael Shigorin 2006-02-17 18:48:46 MSK
Кстати, в Ubuntu местами уже похоже.
Comment 11 Michael Shigorin 2007-03-02 11:38:10 MSK
install2-x11-qt помер, вопрос опять всплыл в devel@
Comment 12 Dmitry V. Levin 2007-03-08 20:41:13 MSK
Алексей, взгляни на это обсуждение, может тут найдётся что-то полезное.
Comment 13 Michael Shigorin 2007-05-27 23:16:12 MSD
(меняю заголовок, поскольку по русским словам багзила почему-то эту багу не
находила -- проверил cut'n'paste)
Comment 14 Michael Shigorin 2009-01-20 19:09:33 MSK
reassign