ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] Hunspell & new dicitonary
@ 2010-03-07 10:58 anyr
  2010-03-08 14:33 ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-07 10:58 UTC (permalink / raw)
  To: community

Пытаюсь сделать специализированный словарь для openoffice, т.е. используя 
hunspell.

Написал некоторые правила аффиксов и небольшой словарь для проверки этих 
самых аффиксов. Теперь встала проблема с проверкой работоспособности этого 
словаря. В документации по hunspell указана утилита hunmorph, которую я не 
нашел. Поэтому решил пойти другим путем.

Обозвал файлы ru_RU-medicine.(aff,dic) и сложил их к остальным словарям в 
/usr/share/myspell вот только они не подхватываются приложениями 
(OpenOffice в частности). Я так понимаю, что необходимо, чтобы имя словаря 
соответствовало языку, т.е. именно ru_RU, а не ru_RU-medicine. Если так, то 
мне придется заменить словарь для проверки русской орфографии на мой 
словарь 
(вернее сменить ссылку на файл словаря и аффиксов). В этом случае придется 
также продублировать содержимое словаря для русского языка.

Есть другой вариант - пользовательские словари OpenOffice. Но тут тоже 
проблема (помимо того, что словарь будет использоваться только в Ooo). На 
сколько я понял правила аффиксов в этом случае не имеют место быть, т.е. 
можно только использовать файл словаря (dic). Это тоже не есть хорошо, 
поскольку я рассчитывал именно использование нескольких суффиксов, а не 
написание огромного количества слов с повторяющимися корнями. 

Я почти уверен, что где-то что-то упускаю, но пока не понял где и что :-\ 
Буду признателен, если кто-нибудь подскажет верный путь.
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-07 10:58 [Comm] Hunspell & new dicitonary anyr
@ 2010-03-08 14:33 ` Sergey Kurakin
  2010-03-09  7:47   ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-08 14:33 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/07/2010 01:58 PM, anyr@tut.by wrote:
> Пытаюсь сделать специализированный словарь для openoffice, т.е. используя 
> hunspell.

  Уточните, какой у вас дистрибутив. Есть нюансы.

> Написал некоторые правила аффиксов и небольшой словарь для проверки этих 
> самых аффиксов.

  Совет: используйте аффиксы проф. Лебедева. Во-первых, они весьма
хороши. А во-вторых: смотрите ниже.

> Теперь встала проблема с проверкой работоспособности этого 
> словаря. В документации по hunspell указана утилита hunmorph, которую я не 
> нашел.

  А почему бы не воспользоваться для проверки самим hunspell?
  Насколько я понял, hunmorph -- это морфологический анализатор,
который уже очень давно отделился от hunspell/myspell и живет своей
жизнью.

> Обозвал файлы ru_RU-medicine.(aff,dic) и сложил их к остальным словарям в 
> /usr/share/myspell вот только они не подхватываются приложениями 
> (OpenOffice в частности). Я так понимаю, что необходимо, чтобы имя словаря 
> соответствовало языку, т.е. именно ru_RU, а не ru_RU-medicine.

  Не совсем так. Используемый словарь выбирается альтернативой
ru_RU.dic + ru_RU.aff. То есть, вы должны добиться, чтобы эти
альтернативы указывали на ваш словарь. И тогда все приложения,
использующие hunspell, будут пользоваться вашим словарем. Все,
кроме... OOo. Подробности здесь:

https://bugzilla.altlinux.org/show_bug.cgi?id=23026#c5

  Как вы поняли, эту "особенность" OOo обошли в Сизифе переименованием
файлов, но в другие репозитории изменение пока не попало.
  Забавно, что если вас интересует исключительно OOo, то вы можете
воспользоваться этой "особенностью", назвав ваш словарь ru_RU__.dic
и ru_RU__.aff. В таком случае с большой вероятностью OOo подхватит
именно его. Но лучше не надо...

> Если так, то 
> мне придется заменить словарь для проверки русской орфографии на мой 
> словарь (вернее сменить ссылку на файл словаря и аффиксов).

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

> В этом случае придется 
> также продублировать содержимое словаря для русского языка.

  Да, придется. Именно поэтому я и советовал использовать готовые
аффиксы основного словаря, чтобы они не конфликтовали с вашими.

> Я почти уверен, что где-то что-то упускаю, но пока не понял где и что :-\ 
> Буду признателен, если кто-нибудь подскажет верный путь.

  Гипотетически самым верным путём было бы найти способ подключать
к hunspell одновременно несколько словарей для одного языка.
Но, увы, мне такой способ неизвестен.
  Так что остается, видимо, взять готовый словарь и добавлять в него
новые слова, пользуясь оригинальным affix-файлом.

  Позволю себе дать еще пару советов.

  В качестве исходного порекомендовал бы взять словарь из
недавно появившегося в Сизифе пакета hunspell-ru-lebedev(-ie,-io).
В нем, как и в давно существующем пакете hunspell-ru(-io),
используется словарь проф. Лебедева, но есть ряд отличий:
  1. Среди пакетов hunspell-ru-lebedev есть так называемый
"комбинированный" словарь, допускающий как использование буквы "ё",
так и замену "ё" на "е". Среди hunspell-ru(-io) такого комбинированного
варианта нет.
  2. hunspell-ru-lebedev основан на версии 0.99g5 2008 года;
hunspell-ru -- это версия 0.99f7 2004 года и содержит
приблизительно на 9700 базовых слов меньше.
  3. Пакеты hunspell-ru-lebedev содержат некоторое количество
добавленных мною новых слов, тщательно отобранных и проверенных,
главным образом по Русскому орфографическому словарю под ред.
В. В. Лопатина. Кстати, медицинские термины там тоже представлены,
хотя и в ничтожном количестве:

http://git.altlinux.org/people/kurakin/packages/?p=ispell-ru-lebedev.git;a=blob;f=addition.words;h=5675f8aaa20ceb224c90120ff2f6fb578ad8529e;hb=bacb90e4df15a7a00f4a3df2a2a51be6b5abee88

  С удовольствием включу в свою сборку и ваши слова. Но только те из
них, которые смогу проверить по словарю Лопатина.

  И, наконец, последний совет. Если вы всерьез собираетесь заниматься
этой работой, то рекомендую иметь в качестве справочного пособия
оригинальный affix-файл проф. Лебедева в формате ispell
russian.aff.koi. Он снабжен очень полезными авторскими комментариями,
позволяющими разобраться, что там к чему. При преобразовании в формат
hunspell/myspell все комментарии теряются и разобраться становится
затруднительно. Подозреваю, что именно этот факт и побудил вас заняться
изготовлением собственного affix-файла, вместо того, чтобы взять
готовый.

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-08 14:33 ` Sergey Kurakin
@ 2010-03-09  7:47   ` anyr
  2010-03-10 12:18     ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-09  7:47 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> On 03/07/2010 01:58 PM, anyr@tut.by wrote:
>> Пытаюсь сделать специализированный словарь для openoffice, т.е. используя
>> hunspell.
> 
>   Уточните, какой у вас дистрибутив. Есть нюансы.
ALTLinux Desktop p5
> 
>   А почему бы не воспользоваться для проверки самим hunspell?
Да, мне уже подсказали про параметр -d, который я сейчас активно использую.

>   Да, только лучше не просто менять ссылку, а разобраться, как работает
> механизм альтернатив и сделать для вашего словаря соответствующую
> альтернативу.
Не думаю, что правильно будет пытаться разобраться сразу в нескольких вещах, 
поэтому пока попытаюсь сделать словарь для Ooo, а потом уже его использовать 
где-то в другом месте.
>   1. Среди пакетов hunspell-ru-lebedev есть так называемый
> "комбинированный" словарь, допускающий как использование буквы "ё",
> так и замену "ё" на "е". Среди hunspell-ru(-io) такого комбинированного
> варианта нет.
Обязательно воспользуюсь словарем проф. Лебедева, спасибо. Про файл аффиксов 
с комментариями я и вовсе не знал :)
>   3. Пакеты hunspell-ru-lebedev содержат некоторое количество
> добавленных мною новых слов, тщательно отобранных и проверенных,
> главным образом по Русскому орфографическому словарю под ред.
> В. В. Лопатина. Кстати, медицинские термины там тоже представлены,
> хотя и в ничтожном количестве:
> 
>   С удовольствием включу в свою сборку и ваши слова. Но только те из
> них, которые смогу проверить по словарю Лопатина.
Пока я еще пытаюсь разродится с возможно не очень хорошей идеей по 
использованию корней латинских/гречески слов как аффиксов для того, чтобы не 
писать очень большой словарь, а ограничиться такими вот правилами аффиксов.

Пример файла аффиксов:
SET KOI8-R
FLAG long

SFX E1 Y 1
SFX E1 а орея		а

SFX E2 Y 1
SFX E2 а орея/H9		а

SFX F1 Y 1
SFX F1 а ограмма		а

SFX F2 Y 1
SFX F2 а ограмма/I9		а

SFX G1 Y 2
SFX G1 итет омодулятор		[итет]
SFX G1 а омодулятор		[а]

SFX G2 Y 2
SFX G2 итет омодулятор/K9	[итет]
SFX G2 а омодулятор/K9		[а]

Пример файла словаря:
лимфа/E1E2F1F2G1G2

Ну и необходимо будет еще туда добавить окончания для самого слова лимфа.

Где-то так я попытаюсь побороть очень большое количество терминов.
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-09  7:47   ` anyr
@ 2010-03-10 12:18     ` Sergey Kurakin
  2010-03-13 14:37       ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-10 12:18 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/09/2010 10:47 AM, anyr@tut.by wrote:
> Sergey Kurakin wrote:
>>   Да, только лучше не просто менять ссылку, а разобраться, как работает
>> механизм альтернатив и сделать для вашего словаря соответствующую
>> альтернативу.

> Не думаю, что правильно будет пытаться разобраться сразу в нескольких вещах, 
> поэтому пока попытаюсь сделать словарь для Ooo, а потом уже его использовать 
> где-то в другом месте.

  Здесь вопрос скорее не в том, какие приложения будут пользоваться
вашим словарем, а в том, чтобы не запутаться и не сломать что-нибудь
в системе.
  Впрочем, сейчас это действительно преждевременно, поскольку открылось
новое обстоятельство:

https://bugzilla.altlinux.org/23118

  Таким образом, чтобы OOo однозначно использовал ваш словарь, надо
чтобы название его файлов начиналось с "ru_RU", и чтобы при этом он был
единственным русским словарем в системе (удалить пакеты hunspell-ru*).

>>   1. Среди пакетов hunspell-ru-lebedev есть так называемый
>> "комбинированный" словарь, допускающий как использование буквы "ё",
>> так и замену "ё" на "е". Среди hunspell-ru(-io) такого комбинированного
>> варианта нет.
> Обязательно воспользуюсь словарем проф. Лебедева, спасибо.

  Скорее всего, вы и так им пользуетесь, поскольку hunspell-ru(-io) --
это тоже Лебедев, только 2004 года. То что я вам предложил -- посвежее
(2008) и с "комбинированным" вариантом.

> Про файл аффиксов 
> с комментариями я и вовсе не знал :)

  Вам вряд ли удастся напрямую им воспользоваться, поскольку он
в формате ispell. Но для оценки масштаба и в качестве справочника --
очень полезен.

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

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

  Hunspell/myspell поддерживает довольно гибкий механизм проверки
сложносоставных слов. Но к сожалению, там трудно избежать ситуаций,
когда два совершенно законных корня образуют бессмыслицу, сливаясь
в одно слово.

> Пример файла аффиксов:
> SET KOI8-R
> FLAG long
> 
> SFX E1 Y 1
> SFX E1 а орея		а

  Это лишнее. Нижеследующая запись "орея/H9" должна покрыть и просто
"орея" в том числе.

> SFX E2 Y 1
> SFX E2 а орея/H9		а

  Кстати, не знал, что аффиксы hunspell поддерживают такого рода
рекурсию. Вряд ли воспользуюсь, но буду иметь ввиду.

> SFX F1 Y 1
> SFX F1 а ограмма		а
> 
> SFX F2 Y 1
> SFX F2 а ограмма/I9		а
> 
> SFX G1 Y 2
> SFX G1 итет омодулятор		[итет]
> SFX G1 а омодулятор		[а]
> 
> SFX G2 Y 2
> SFX G2 итет омодулятор/K9	[итет]
> SFX G2 а омодулятор/K9		[а]
> 
> Пример файла словаря:
> лимфа/E1E2F1F2G1G2

  А слово "лимфа" уже есть в базовом словаре с флагом /H. И как такие
конфликты обрабатывать?

  Куда проще дописать к базовому словарю:
лимфорея/H
лимфограмма/I
лимфомодулятор/K

  Вам, конечно, виднее. Но на первый взгляд ваш подход выглядит
как переусложненный.

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-10 12:18     ` Sergey Kurakin
@ 2010-03-13 14:37       ` anyr
  2010-03-14 13:40         ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-13 14:37 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> А слово "лимфа" уже есть в базовом словаре с флагом /H. И как такие
> конфликты обрабатывать?
> 
> Куда проще дописать к базовому словарю:
> лимфорея/H
> лимфограмма/I
> лимфомодулятор/K
> 
> Вам, конечно, виднее. Но на первый взгляд ваш подход выглядит
> как переусложненный.
> 
Эти слова я для примера привел.

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

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

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

P.S.: Добавлять специализированные термины может и имеет смысл в "общий" 
словарь, но так он будет со временем очень огромным и трудно контролируемым.
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-13 14:37       ` anyr
@ 2010-03-14 13:40         ` Sergey Kurakin
  2010-03-14 20:31           ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-14 13:40 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/13/2010 05:37 PM, anyr@tut.by wrote:
> Самой большой проблемой оказалось что, при минимальном количестве правил 
> некоторые не употребляемые (может быть только пока слова) считаются верными.

  Эта проблема возникает, если использовать механизм образования
сложносоставных слов.

> Возможно это можно победить написанием достаточно сложных для поставленной 
> задачи правил аффиксации, но я пока не рискну это сделать.

  Ваш подход как раз и позволяет это победить, но очень трудоемок.
И не понятно, как совместить результат вашей работы с общим словарем.

> Поэтому 
> откладываю незаконченным начатое и пойду по пути, которым ходили уже многие 
> - поиском недостающих слов.

  Вот и правильно!

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

  Желаю удачи.
  А по поводу подключения словарей к OOo могу сказать следующее:

  1. Использование нескольких словарей для одного языка в OOo сейчас
невозможно. Смотрел соответствующий код, там это прямо написано
в комментариях. Так что в любом случае придется напрямую добавлять
новые слова в существующий словарь. Другого способа совместить словари
в пределах одного языка в OOo сейчас нет.

  2. Ситуация с выбором рабочего словаря из нескольких системных в OOo
оказалась еще более запутанной. Если установлено несколько словарей для
одного языка, он попросту берет первый попавшийся!

https://bugzilla.altlinux.org/23118

  Поэтому, чтобы исключить неприятные случайности, надо чтобы ваш
словарь оказался единственным русским словарем в /usr/share/myspell/.
Но есть способ лучше.

  3. Можно сделать "словарь как расширение" (dictionary as extension).
Такие словари в формате myspell/hunspell (.dic + .aff) устанавливаются
в домашний каталог пользователя штатными средствами OOo и имеют
приоритет перед всеми системными словарями. Так что путаницы не
возникнет и не придется копаться в системных каталогах. Оформить
"словарь как расширение" на первый взгляд несложно, примеры можно
посмотреть здесь:

http://extensions.services.openoffice.org/dictionary

> P.S.: Добавлять специализированные термины может и имеет смысл в "общий" 
> словарь, но так он будет со временем очень огромным и трудно контролируемым.

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

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-14 13:40         ` Sergey Kurakin
@ 2010-03-14 20:31           ` anyr
  2010-03-16 18:19             ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-14 20:31 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> И не понятно, как совместить результат вашей работы с общим словарем.
Я использовал FLAG long, а он подразумевает использование названий флагов 
вроде A1, поэтому я с чистой душой добавил ко всем флагам позаимствованным 
из правил аффиксов русского языка цифру 9, оставив для себя запас в на все 
остальные цифры.

>   3. Можно сделать "словарь как расширение" (dictionary as extension).
Пока так и планирую.

> 
>> P.S.: Добавлять специализированные термины может и имеет смысл в "общий"
>> словарь, но так он будет со временем очень огромным и трудно
>> контролируемым.
> 
>   Что касается "словарей общего пользования", то меня здесь волнует
> не размер, а "авторитетность". Если в словарь попадает медицинский
> термин или малораспространенное слово -- в этом нет ничего плохого.
> Плохо, когда словарь содержит слова сомнительные -- они подрывают
> его авторитетность. Поэтому я добавляю лишь те слова, существование
> и правописание которых могу документально подтвердить.
> 
Тем более.

-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-14 20:31           ` anyr
@ 2010-03-16 18:19             ` anyr
  2010-03-16 21:07               ` anyr
  2010-03-17 17:21               ` Sergey Kurakin
  0 siblings, 2 replies; 19+ messages in thread
From: anyr @ 2010-03-16 18:19 UTC (permalink / raw)
  To: community

anyr@tut.by wrote:

>>3. Можно сделать "словарь как расширение" (dictionary as extension).
> Пока так и планирую.
Сделал кратенький словарь 
(http://paq.osdn.org.ua/~anyr/files/dictionary/ru_RU-medicine-1.0.oxt).
Но вот загвоздка, при его подключении перестает работать "системная" 
проверка орфографии.

Подскажите, как такое победить.
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-16 18:19             ` anyr
@ 2010-03-16 21:07               ` anyr
  2010-03-17 18:09                 ` Sergey Kurakin
  2010-03-17 17:21               ` Sergey Kurakin
  1 sibling, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-16 21:07 UTC (permalink / raw)
  To: community

anyr@tut.by wrote:

> Сделал кратенький словарь
> (http://paq.osdn.org.ua/~anyr/files/dictionary/ru_RU-medicine-1.0.oxt).
> Но вот загвоздка, при его подключении перестает работать "системная"
> проверка орфографии.
> 
> Подскажите, как такое победить.
> 
Нашел описанный по этому поводу у разработчиков Ooo баг:
http://lingucomponent.openoffice.org/issues/show_bug.cgi?id=98644
Там написано, что баг пофиксили :-\ Как же так выходит?
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-16 18:19             ` anyr
  2010-03-16 21:07               ` anyr
@ 2010-03-17 17:21               ` Sergey Kurakin
  2010-03-17 18:53                 ` anyr
  1 sibling, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-17 17:21 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/16/2010 09:19 PM, anyr@tut.by wrote:
> Сделал кратенький словарь 
> (http://paq.osdn.org.ua/~anyr/files/dictionary/ru_RU-medicine-1.0.oxt).
> Но вот загвоздка, при его подключении перестает работать "системная" 
> проверка орфографии.

  Так ведь о том и речь, что "for now" OOo поддерживает не более одного
словаря для одного языка (см. комментарий в строке 194):

http://git.altlinux.org/srpms/o/openoffice.org.git?p=openoffice.org.git;a=blob;f=ooo320-m12-components/OOO320_m12/lingucomponent/source/spellcheck/spell/sspellimp.cxx;h=80815b67135c75fc14b24320d2c6f110030f489f;hb=f4967d88aca38565b0543e8f5cc72a7e82410f29#l194

  "In the future" обещают реализовать, но видимо, "future" еще
не наступило.

  А вот здесь гарантируется приоритет загрузки пользовательского
словаря перед системными (см. комментарий в строке 110):

http://git.altlinux.org/srpms/o/openoffice.org.git?p=openoffice.org.git;a=blob;f=ooo320-m12-components/OOO320_m12/lingucomponent/source/lingutil/lingutil.cxx;h=26a495b62436cd9978ea274a4386597c02cdaf49;hb=f4967d88aca38565b0543e8f5cc72a7e82410f29#l110

  Так что формально всё правильно.

> Подскажите, как такое победить.

  Повторюсь: не вижу другого способа, кроме как дополнить существующий
"общий" словарь своими словами и упаковать это всё "как расширение".
Ну и надеяться, что "future" рано или поздно наступит.

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-16 21:07               ` anyr
@ 2010-03-17 18:09                 ` Sergey Kurakin
  0 siblings, 0 replies; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-17 18:09 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/17/2010 12:07 AM, anyr@tut.by wrote:
> Нашел описанный по этому поводу у разработчиков Ooo баг:
> http://lingucomponent.openoffice.org/issues/show_bug.cgi?id=98644
> Там написано, что баг пофиксили :-\ Как же так выходит?

  Насколько понимаю, там речь немного не о том. Там говориться о двух
spellchecker'ах для одного языка. А у нас spellchecker один -- hunspell.

  Вообще-то поднятый вами вопрос не столь однозначен, как может
показаться на первый взгляд. Если у пользователя установлено несколько
словарей для одного языка, то это еще не значит, что пользователь хочет
задействовать их одновременно. Возможны варианты:

  1. Использовать все словари одновременно (ваша ситуация).
  2. Использовать только один словарь из установленных с возможностью
выбора (моя ситуация).
  3. Универсальное решение -- иметь возможность включить или отключить
любой словарь из установленных для данного языка.

  Таким образом, вопрос упирается в интерфейс включения/отключения
словарей. Судя по всему, в апстриме есть планы на этот счет...

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-17 17:21               ` Sergey Kurakin
@ 2010-03-17 18:53                 ` anyr
  2010-03-17 20:26                   ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-17 18:53 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> Повторюсь: не вижу другого способа, кроме как дополнить существующий
> "общий" словарь своими словами и упаковать это всё "как расширение".
> Ну и надеяться, что "future" рано или поздно наступит.
> 
Да, пожалуй. Это неудобно, буду терять слова :(
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-17 18:53                 ` anyr
@ 2010-03-17 20:26                   ` Sergey Kurakin
  2010-03-20 14:57                     ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-17 20:26 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/17/2010 09:53 PM, anyr@tut.by wrote:
> Sergey Kurakin wrote:
>> Повторюсь: не вижу другого способа, кроме как дополнить существующий
>> "общий" словарь своими словами и упаковать это всё "как расширение".
>> Ну и надеяться, что "future" рано или поздно наступит.
>>
> Да, пожалуй. Это неудобно, буду терять слова :(

  Зачем же терять? Надо написать несложный скрипт, который будет
комбинировать "общий" словарь с вашим специальным -- тогда ничего
не потеряете.

  Причем надо сделать так, чтобы при наличии какого-то слова в обоих
словарях но с разными флагами, использовать флаги из специального
словаря.
  Например, тот же "дерматоз" -- в общих словарях он, конечно,
присутствует, но разрешено склонение только единственного числа.
Что разумно, так как в обыденной речи это слово не употребляется
во множественном числе.
  В медицинских текстах, напротив -- и дерматозы и другие подобные
слова на вполне законных основаниях могут встречаться во множественном
числе.

  Ну и вдобавок, скрипт должен делать сортировку, подсчет количества
слов и, возможно, даже упаковку в .oxt.

  Что-то мне подсказывает, что подобные задачи кто-нибудь уже давно
решал и скрипты написал. Попробуйте поискать.

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-17 20:26                   ` Sergey Kurakin
@ 2010-03-20 14:57                     ` anyr
  2010-03-21  9:42                       ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-20 14:57 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> Что-то мне подсказывает, что подобные задачи кто-нибудь уже давно
> решал и скрипты написал. Попробуйте поискать.
> 
Пока я таких скриптов не нашел. Если есть на виду - подскажите пожалуйста.
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-20 14:57                     ` anyr
@ 2010-03-21  9:42                       ` Sergey Kurakin
  2010-03-21 13:04                         ` anyr
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-21  9:42 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On 03/20/2010 05:57 PM, anyr@tut.by wrote:
>> Что-то мне подсказывает, что подобные задачи кто-нибудь уже давно
>> решал и скрипты написал. Попробуйте поискать.

> Пока я таких скриптов не нашел. Если есть на виду - подскажите пожалуйста.

  Кабы знал, сказал бы сразу.

  Но задача-то, вроде, не очень сложная. Сами не справитесь?

-- 
WBR,
Sergey Kurakin


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-21  9:42                       ` Sergey Kurakin
@ 2010-03-21 13:04                         ` anyr
  2010-03-21 19:08                           ` Sergey Kurakin
  0 siblings, 1 reply; 19+ messages in thread
From: anyr @ 2010-03-21 13:04 UTC (permalink / raw)
  To: community

Sergey Kurakin wrote:

> Но задача-то, вроде, не очень сложная. Сами не справитесь?
Пожалуй нет.

-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-21 13:04                         ` anyr
@ 2010-03-21 19:08                           ` Sergey Kurakin
  2010-03-22 15:41                             ` Andrey Yurkovsky
  0 siblings, 1 reply; 19+ messages in thread
From: Sergey Kurakin @ 2010-03-21 19:08 UTC (permalink / raw)
  To: ALT Linux Community general discussions

[-- Attachment #1: Type: text/plain, Size: 597 bytes --]

On 03/21/2010 04:04 PM, anyr@tut.by wrote:
> Sergey Kurakin wrote:
>> Но задача-то, вроде, не очень сложная. Сами не справитесь?
> Пожалуй нет.

  Тогда попробуйте мой. Запускать примерно так:

$ ./dic_combine ru_RU-medicine.dic /usr/share/myspell/ru_RU.dic >
ru_RU-med.dic

  Исходных словарей может быть от двух и более, но все они должны
использовать один и тот же affix-файл (и следовательно, одну
кодировку). Левый исходный словарь имеет приоритет перед правым.
То есть, при наличии в словарях одного и того же слова с разными
флагами, используются флаги из первого.

-- 
WBR,
Sergey Kurakin

[-- Attachment #2: dic_combine --]
[-- Type: text/plain, Size: 478 bytes --]

#!/bin/bash

# Combines two or more hunspell dictionaries.
# (C) 2010 Sergey Kurakin <kurakin@altlinux.org>

# Attention! All source dictionaries MUST share the same affix file.

# Usage: dic_combine source1.dic source2.dic [source3.dic...] > combined.dic

# The left source dictionary takes precedence over the right one.


WORDS=`cat $@ | sort --field-separator=/ --key=1,1 --unique | sed -r 's|^[0123456789]*$||'`

echo $WORDS | wc -w
for WORD in $WORDS
do
	echo $WORD
done


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-21 19:08                           ` Sergey Kurakin
@ 2010-03-22 15:41                             ` Andrey Yurkovsky
  2010-03-25 18:53                               ` Andrey Yurkovsky
  0 siblings, 1 reply; 19+ messages in thread
From: Andrey Yurkovsky @ 2010-03-22 15:41 UTC (permalink / raw)
  To: community

Результат:
1. Комбинированный словарь для проверки орфографии медицинских терминов на 
русском языке:
http://paq.osdn.org.ua/~anyr/files/dictionary/ru_RU-medicine-0.0.2.oxt

В последующем будет перенесен на extensions.services.openoffice.org

2. Скрипт by Sergey Kurakin для объединения словарей:
http://paq.osdn.org.ua/~anyr/files/dictionary/dic_combine

-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [Comm] Hunspell & new dicitonary
  2010-03-22 15:41                             ` Andrey Yurkovsky
@ 2010-03-25 18:53                               ` Andrey Yurkovsky
  0 siblings, 0 replies; 19+ messages in thread
From: Andrey Yurkovsky @ 2010-03-25 18:53 UTC (permalink / raw)
  To: community

Andrey Yurkovsky wrote:

> В последующем будет перенесен на extensions.services.openoffice.org
http://extensions.services.openoffice.org/ru/project/dict_ru-RU-medicine
-- 
Andrey Yurkovsky



^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2010-03-25 18:53 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-07 10:58 [Comm] Hunspell & new dicitonary anyr
2010-03-08 14:33 ` Sergey Kurakin
2010-03-09  7:47   ` anyr
2010-03-10 12:18     ` Sergey Kurakin
2010-03-13 14:37       ` anyr
2010-03-14 13:40         ` Sergey Kurakin
2010-03-14 20:31           ` anyr
2010-03-16 18:19             ` anyr
2010-03-16 21:07               ` anyr
2010-03-17 18:09                 ` Sergey Kurakin
2010-03-17 17:21               ` Sergey Kurakin
2010-03-17 18:53                 ` anyr
2010-03-17 20:26                   ` Sergey Kurakin
2010-03-20 14:57                     ` anyr
2010-03-21  9:42                       ` Sergey Kurakin
2010-03-21 13:04                         ` anyr
2010-03-21 19:08                           ` Sergey Kurakin
2010-03-22 15:41                             ` Andrey Yurkovsky
2010-03-25 18:53                               ` Andrey Yurkovsky

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git