Bug 23026 - Сгруппировать альтернативы
Summary: Сгруппировать альтернативы
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: hunspell-ru (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-24 16:36 MSK by Sergey Kurakin
Modified: 2010-02-24 21:55 MSK (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Kurakin 2010-02-24 16:36:26 MSK
Желательно сгруппировать альтернативу ru_RU.{dic,aff}, оформив ru_RU.dic в качестве master, а ru_RU.aff -- в качестве slave. Это предотвратит потенциальную проблему, когда словарь может разъехаться со своим affix-файлом.

Я никогда бы не заметил такую мелочь, но собрав в sisyphus другие словари с этой же альтернативой в сгруппированном виде, натолкнулся на slave-master конфликт. Пришлось разгруппировать обратно:

http://git.altlinux.org/people/kurakin/packages/?p=ispell-ru-lebedev.git;a=commitdiff;h=29dffdc0526908260b4a731d530f4e26427d72f7

Предлагаю все-таки сгруппировать эту альтернативу. То же относится и к пакету hunspell-ru-io.

Если добавите меня в ACL пакетов hunspell-ru и hunspell-ru-io, то сделаю сам.
Comment 1 Valery Inozemtsev 2010-02-24 16:42:42 MSK
ниче не понял. можно как нибудь более понятным языком?
Comment 2 Sergey Kurakin 2010-02-24 16:52:37 MSK
Сейчас:

$ cat /etc/alternatives/packages.d/hunspell-ru
/usr/share/myspell/ru_RU.dic /usr/share/myspell/ru_RU_.dic 10
/usr/share/myspell/ru_RU.aff /usr/share/myspell/ru_RU_.aff 10

Хочется:
/usr/share/myspell/ru_RU.dic /usr/share/myspell/ru_RU_.dic 10
/usr/share/myspell/ru_RU.aff /usr/share/myspell/ru_RU_.aff /usr/share/myspell/ru_RU_.dic

То есть, чтобы альтернатива ru_RU.aff была slave'ом master-альтернативы ru_RU.dic.
Comment 3 Valery Inozemtsev 2010-02-24 16:57:22 MSK
в hunspell-ru-io так же?
Comment 4 Sergey Kurakin 2010-02-24 17:04:47 MSK
(In reply to comment #3)
> в hunspell-ru-io так же?

Да, с точностью до названий файлов. Давайте, я через пару часов в git'e покажу, что я хочу от этих двух пакетов. Там есть еще один неприятный момент...
Comment 5 Sergey Kurakin 2010-02-24 19:31:17 MSK
Итак, группировка альтернатив:

http://git.altlinux.org/people/kurakin/packages/?p=hunspell-ru.git;a=commitdiff;h=1b6d87b82c27b7e45f3f452f0686ea3499bfed51

Это всё, конечно, мелочи, косметика...

А вот ситуация интереснее. Хотел другую багу заводить, но раз уж здесь начали...

$ rpm -qa | grep hunspell-ru
hunspell-ru-20040406-alt5
hunspell-ru-lebedev-0.99g5-alt6
(установлены два русских словаря для hunspell)

$ alternatives-list | grep ru_RU                                             
/usr/share/myspell/ru_RU.aff points to /usr/share/myspell/ru_RU-lebedev.aff
/usr/share/myspell/ru_RU.dic points to /usr/share/myspell/ru_RU-lebedev.dic
(как видим, альтернатива указывает на второй из них)

Приложения, использующие libhunspell (Firefox, Thunderbird) корректно воспринимают эту альтернативу и пользуются вторым словарем (hunspell-ru-lebedev). Все, кроме openoffice.org, который продолжает пользоваться первым (hunspell-ru), вне зависимости от состояния альтернативы.

Если удалить пакет hunspell-ru, то OOo переключается на тот словарь, на который указывает альтернатива.

Видимо, у OOo свой алгоритм выбора словаря. И в этом алгоритме "ru_RU_.dic" (название словаря из пакета hunspell-ru) имеет приоритет перед "ru_RU.dic" (название альтернативы).

Чтобы не копаться в OOo (а у него могут быть свои причины для такого поведения), предлагаю просто переименовать файлы словарей, избавиться от символа подчеркивания:

http://git.altlinux.org/people/kurakin/packages/?p=hunspell-ru.git;a=commitdiff;h=b8ee61f9d5aaa8d7273b60677cccc0a212487ce8

После этого OOo корректно выбирает словарь по альтернативе "ru_RU.dic". Я проверил. В пакете hunspell-ru-io спасает переименование ru_RU_io => ru_RU-io.

Опять же,  дадите ACL -- исправлю сам.
Comment 6 Repository Robot 2010-02-24 21:19:19 MSK
hunspell-ru-20040406-alt6 -> sisyphus:

* Wed Feb 24 2010 Valery Inozemtsev <shrek@altlinux> 20040406-alt6

- grouped alternative (closes: #23026)
Comment 7 Sergey Kurakin 2010-02-24 21:55:08 MSK
(In reply to comment #6)
> hunspell-ru-20040406-alt6 -> sisyphus:

Да, спасибо. Сейчас свой тоже пересоберу со сгруппированными.