Автор Гілка: aspell-uk (aka ispell-uk reincarnated)  (Прочитано 6254 раз)

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Всім привіт!

Якщо хтось зацікавлений, я дещо реінкарнував словники ispell-uk для aspell-0.60. Оскільки ispell фактично мертвий, а aspell-0.60 нарешті підтримує афікси, я написав невеличкого скрипта і перекодував файли афіксів ispell-uk в aspell. Також щоб уникнути проблем з кодуваннями я перевів все в utf-8. І щоб не тягнути старих ганчірок я створив нове дерево aspell-uk в проекті ispell-uk (тому деякі функції, як напр. інсталяція, не працюють). Поки що я вирішив не створювати новий проект на sourceforge (оскільки проект ispell-uk має заголовок ispell-uk/aspell-uk), але можливо в цьому є сенс, особливо, якщо все ж таки створювати веб-сторінку.  
Зрештою зараз словоформи, що генеруютсья новим aspell-uk (якщо ввімкнути підтимку дефісу) майже співпадають зі старими, згерерованими ispell-uk. (65К слів ~ 814К словоформ). Крім того aspell вказав на декілька проблем з афіксами, яки прийшлось полагодити.  
Власне я взявся за це тому, що було шкода гарних ідей, закладених в ispell-uk:  
- досить сильна нормалізація слів, яка дає декілька переваг:  
-- додавання одного слова з прапорцями афіксів одразу може дати 20-30 словоформ
-- розмір суттєво менший ніж при простому переліку або рудиментарних афіксах
- знаходження якомога більше помилок (проти перегонами за кількістю слів в словнику), що досясається через ретельну перевірку додаваних слів та чистотою правил афіксів
- ліцензійна чистота словнику
Сам я, скоріш за все, поставити на ноги цей проект не зможу, але якщо хтось може виділити деякий час, то, думаю, можна поставити його на ноги.  Деякі першочергові проблеми можна переглянути в TODO. Одна з цікавих - я зіштохнувся, що aspell при перевірці чомусь не розуміє слів з дефісами, тому я поки що вимкнув підтримку дефісів. Докладніше в тому ж TODO.  Окрім того я б дуже волів відновити діалог з хлопцями з aspell-uk-0.9.6, щоб не тримати два словника для української мови і не морочити собі і людям голову, який aspell-uk а який aspell-uk-a тощо. Основний напрямок тут був би взяти афікси ispell-uk та словники aspell-uk-0.9.6 (що не мають проблем з ліцензійністю) та злити обидві праці.

Також, якщо б хтось взявся зробити веб-сторінку aspell-uk було б взагалі чудово.

Андрій
Fedora 35 (x86-64)

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #1 : 2005-08-14 23:10:17 »
сторінка старого ispell-uk http://sourceforge.net/projects/ispell-uk/
новий проект можна отримати через CVS:

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ispell-uk login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ispell-uk co -P aspell-uk

або через WebCVS:

http://cvs.sourceforge.net/viewcvs.py/ispell-uk/aspell-uk/
Fedora 35 (x86-64)

Відсутній tech

  • Письменник
  • *****
  • дописів: 586
  • Карма: +1/-0
  • Гигик
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #2 : 2005-08-15 16:46:00 »
У мене не компільнулося (aspell встановлено). Локаль - POSIX у той момент.

(root@dstar:/home/nabis/aspell-uk)$ make
cat uk_words.lst | LANG=uk_UA.UTF-8 aspell --local-data-dir=./ --lang=uk create master ./uk.rws
Error: The key "data-encoding" is unknown.
make: *** [uk.rws] Error 1
(root@dstar:/home/nabis/aspell-uk)$ grep -R data-encoding *
uk.dat:data-encoding    utf-8

Slackware 8.1 ; make 3.79.1
Хоча, напевне, занадто стара система.
« Змінено: 2005-08-15 16:50:23 від tech »

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #3 : 2005-08-15 21:20:05 »
aspell має бути принаймні 0.60, наскільки я розумію, а оскільки в повідомленні він скаржиться на невідомий параметр, скоріш за все aspell у вас застарий, спробуйте поновити aspell, оскільки в будь-якому разі підтримка афіксів з'явилась лише в 0.60.х

як з'явиться час - поставлю перевірку версії
Fedora 35 (x86-64)

Відсутній tech

  • Письменник
  • *****
  • дописів: 586
  • Карма: +1/-0
  • Гигик
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #4 : 2005-08-16 03:45:56 »
Так, справді. Aspell був 0.50.4.1.
Також моя ncurses бібліотека не підтримує utf8. Під час компіляції aspell-0.60.3:
(nabis@dstar:~/aspell-0.60.3)$ ./configure
.....
checking for working curses library... found in -lncurses
checking for wide character support in curses libraray... no
configure: WARNING: Aspell will not be able to Display UTF-8 characters correctly.
checking if standard curses include sequence will work... yes
...
(ncurses-5.2 версії) Он таке в мене все старезне...
« Змінено: 2005-08-16 03:53:57 від tech »

Відсутній Євгеній Мещеряков

  • Дописувач
  • **
  • дописів: 65
  • Карма: +0/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #5 : 2005-08-26 18:41:44 »
Так, справді. Aspell був 0.50.4.1.
Також моя ncurses бібліотека не підтримує utf8. Під час компіляції aspell-0.60.3:
(nabis@dstar:~/aspell-0.60.3)$ ./configure
.....
checking for wide character support in curses libraray... no
...
В деяких дистрибутивах (Debian) є пакунки ncurses та ncursesw, для підтримки Unicode потрібно встановити libncursesw*-dev. Може й тут така проблема?

Відсутній Євгеній Мещеряков

  • Дописувач
  • **
  • дописів: 65
  • Карма: +0/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #6 : 2005-08-26 18:46:24 »
сторінка старого ispell-uk http://sourceforge.net/projects/ispell-uk/
новий проект можна отримати через CVS:

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ispell-uk login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ispell-uk co -P aspell-uk

або через WebCVS:

http://cvs.sourceforge.net/viewcvs.py/ispell-uk/aspell-uk/

А чому в окремій директорії? Було б дуже добре, якщо б можна було побудувати два словника з одних джерельних кодів. А конвертувати кодування можна і за допомогою iconv.

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #7 : 2005-08-29 20:34:50 »
До купи - існує два різних проекти
 - ispell-uk на SF.net зі словником створеним вручну Андрієм Добровольским, Дмитром Ковальовим та іншими;
 - aspell-uk на LOU зі словником створеним автоматизованою системою на основі бази слів зібраних перекладачкою Валентина Соломка та оброблених мною.

Коли ми з Валентином починали проект aspell-uk, підтримки aspell в ispell-uk ще не було. Мало того, через особисті причини співпраця з ispell-uk не вдалася (якщо точніше, то aspell-uk є результатом цієї розмовки ;) ).
Щоб було веселіше, я також сконвертнув aspell-uk у формат ispell (пакунок має назву ispell-uk-a) та myspell для OOo та FF (myspell-uk). Щоб було ще веселіше, добрі люди взяли ispell-uk з SF.net та конвертнули його у формати aspell та myspell. В OOo використовується (здається) мій myspell-uk, в FF - не мій (здається, не перевіряв).

Перевага aspell-uk - значно більше слів. Переваги ispell-uk - значно вища якість.
Якби якась добра людина з проекту ispell-uk (ви, здається, маєте доступ до CVS проекту ispell-uk?) допомогла злити ці два проекти в один...  ::)
[Fedora Linux]

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #8 : 2005-08-30 00:21:48 »
ага (з поверненням вас з відпустки :) ), власне все трошки більш кучеряве ніж я уявляв  :-?
тоді треба накидати дорожню карту, є пропозиція спочатку зайнятися об'єднанням двох оригінальних проектів, а потім в процесі долучити авторів похідних
на початку я бачу два варіанти:
1) зробити один уніфікований словник
2) зробити один проект, який би дозволяв в залежності від потрібної конфігурації створювати один варіант словника або інший з перспективою поступового злиття
я не думаю, що є сенс підтримувати ispell, тому можна зосередитись на aspell та myspell і варіант 2) мені видається більш реальним

щодо доступу до CVS ispell-uk, він в мене є, а от на рахунок "доброї людини" - це питання складне і пов'язано з катастрофічним браком часу 8-)
до того ж наскільки я пам'ятаю основна суперечка з Дмитром, адміном ispell-uk, (а він поки що єдиний з розробників ispell-uk хто погодився вкласти свій час в реанімування проекту) була щодо юридичної "чистоти" словників, я гадаю, потрібно підняти метадані з цього приводу і ще раз спробувати знайти консенсус, я, напевне, міг би взяти на себе узгоджувальну функцію і тут власне варіант 2) міг би стати як раз в нагоді

тепер щодо "ТУДУ":
1) створити проект з можливістю генерування словників aspell та myspell з одного зі словників: "якісного" або "більшого"
2) знайти/згадати основні причини розділення проектів та спробувати їх вирішити
3) відсіяти "непевні" слова з більшого словника, нормалізувати їх під правила суфіксів "якісного" ispell/aspell і об'єднати
4) перевіряти слова/правила, вдосконалювати правила, додавати нові слова/словоформи
5) goto 4 :)

для пункту 4 було б бажано мати автоматизацію, бажано з графічним інтерфейсом (частково ідея була реалізована в невеличкій утиліті в CVS в ispell-uk)

Володимире, я можу попросити Дмитра надати вам рахунок в CVS ispell-uk якщо ми вирішимо всі неузгоджені моменти та що проект буде розвиватися саме на SF
Fedora 35 (x86-64)

Відсутній Дмитро Ковальов

  • Кореспондент
  • ***
  • дописів: 236
  • Карма: +0/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #9 : 2005-08-31 05:22:16 »
ага (з поверненням вас з відпустки :) ),
...
тепер щодо "ТУДУ":
1) створити проект з можливістю генерування словників aspell та myspell з одного зі словників: "якісного" або "більшого"
2) знайти/згадати основні причини розділення проектів та спробувати їх вирішити
3) відсіяти "непевні" слова з більшого словника, нормалізувати їх під правила суфіксів "якісного" ispell/aspell і об'єднати
4) перевіряти слова/правила, вдосконалювати правила, додавати нові слова/словоформи
5) goto 4 :)
...
Володимире, я можу попросити Дмитра надати вам рахунок в CVS ispell-uk якщо ми вирішимо всі неузгоджені моменти та що проект буде розвиватися саме на SF

Кілька коментарів від мене.

1. Проект на SF є по суті вже включає в себе проект альтернативного aspell-uk. Тобто, питання інтеграції вже було вирішене з нашого боку. Як це зроблено (пишу по пам'яті, давно не навідувався в CVS, треба буде освіжити, а SF чомусь сьогодні мен іне відповідає):

Словники для aspell і ispell ґенеруються з одних і тих же джерел. Словники можуть ґенеруватися в "чистому" і "брудному" режимі.
"Чистий" режим ― слова ґенеруються з  афіксів і словників, в яких розставлені прапорці для цього афіксу (тобто, те, що було зроблено вручну-напівручну, вивірено і вичитано).
В "брудному" (тобто багато слів, але їх якість і чистота не гарантуються) режимі використовується додатковий словник. Цей додатковий словник взятий з якоїсь чергової версії альтернативного aspell-uk. Цей словник відфільтрований ― виключені слова, які вже входять в першу ("чисту") частину. Тобто, фактично, в "брудному" режимі словник ispell-uk має таку ж кількість слів, як і aspell-uk.

Як перемикається побудова між "брудним" і "чистим" зараз не пам'ятаю.

Але робота в основному має йти в напрямку переносу слів із "брудної" частини в "чисту" чи викиданням їх звідти, якщо вони невірні.

2) Андрій Добровольський не приймав участі в ispell-uk. Головними учасниками були Андрій Рисін, Максим Поляков і я.  
3) Адміністраторами проекту на SF є я (dmytro at СФ.нет) і Максим (polyama at теж саме). У обох нас є право додавати доступ на запис до CVS. Щоб отримати доступ до CVS спочатку треба отримати Login і ім'я на SF.net ― це питання незалежне від обох нас і  повинно вирішуватися кожним індивідуально).
« Змінено: 2005-08-31 05:23:58 від dmytro »

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #10 : 2005-08-31 15:49:46 »
Якщо словники вже злиті, то напевно нічого додаткового робити і не треба. :-)
[Fedora Linux]

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #11 : 2005-09-02 05:05:48 »
наскільки я пам'ятаю, оскільки aspell тоді не пітримував афікси, словники злиті були неефективно: ispell-uk генерував всі словоформи з нормалізованого словника+правила афіксів, потім додавались словоформи з додаткового словнику і це все запихалося в конфігурацію aspell

моя ідея була взяти нормалізований словник та досить розвинені правила ispell-uk перевести їх для нового aspell, що пітримує афікси, перевести всі файли в utf-8 і відкинути деякі старі ганчірки (я пішов найпростішим шляхом і створив нові файли для aspell)
при нагоді можна зробити можливість генерувати 8-бітні кодування, підтримувати інші програми офрографії тощо

так що робота є, оскільки навіть перша стадія перекидання правил і програм для їх обробки ще не завершено (хоча десь 85% вже є), деяку роботу по перекиданню корисних частин з того, що вже було я спробую зробити на цих вихідних

Якщо Дмитро та Володимир створять майданчик для спільної роботи над проектом було б взагалі чудово, і, сподіваюсь, можна було б розпалалелити роботу та залучити більше охочих...
Fedora 35 (x86-64)

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #12 : 2005-09-27 05:18:12 »
для тих, хто не підписаний на розсилку, зроблю анонс:
http://ispell-uk.sourceforge.net/

версія 1.1 на підході, але ще є деякі проблеми, тому будь-яка участь у проекті вітається
Fedora 35 (x86-64)

Відсутній DalekiyObriy

  • Літератор
  • ******
  • дописів: 1929
  • Карма: +5/-0
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #13 : 2005-10-01 23:29:18 »
Сторінка:
http://ispell-uk.sourceforge.net/
Звантаження:
http://sourceforge.net/projects/ispell-uk

Новини:
01.10.2005
    * Виправлено пакунки myspell
    * Виправлено кодування файлу ukrainian.kdb для aspell-uk
    * Поновлено/покладено файли авторських прав та README

Що потрібно зробити:
   1.  Перевірити чому aspell намагається також перевіряти англійські слова
   2.  Перевірити чому Thunderbird перетворює словник uk.* в "Ukrainian", а uk_UA.* - тільки в "uk-UA"
   3.  Перевірити на інших системах - не-GNU/Linux

Буду вдячний за будь-яку допомогу щодо 1,2,3.

P.S. Мене тиждень не буде, але сподіваюсь по поверненню (тобто, десь середина жовтня) зробити версію 1.1, тому ваші відгуки по тестуванню будуть вельми в пригоді
Fedora 35 (x86-64)

Можливо стара тема але є(Guest)

  • Гість
Re: aspell-uk (aka ispell-uk reincarnated)
« Відповідей #14 : 2006-01-15 02:59:51 »
Можливо підскажете як з допомогою файла .aff можна найти головну словоформу слова ?
Я зрозумів яз з допомогою словника і файла .aff находити слова які являються дочірними від слова заданого а от як на оборот ? Для прикладу маємо слово Мамою: а треба найти слово мама ! як можливо використовувати файл aff ! правільно,
спасибі за допомогу.!