Здравейте, За съжаление, нямам свободно време и ми е трудно да участвам в нови проекти.
Които е изпратил някакви промени към БГОфис съм ги вкарвал - но те са били доста малко. Променя на лицензи, 1-2 сгрешени типа и пр. - нещата са описани в ChangeLog кое и какво е променяно, Като съм започвал проекта съм си поставил няколко ясни, точни и изпълними цели. Описани са във файла - design_objective.txt "Главната идея е да се постигне лесна и удобна структура за съхранение и добавяне на нови данни. От тази структура с помощта на програма да се генерират съответните речници или да се трансформират данните в друг по-компактен вид." И съм спрял до там. Т.е. в момента има структура на данните, която може да се редактира с текстов редактор и има скриптове на езика Perl, с чиято помощ може да проверявате базата (данните), да генерирате речници за проверка на правописа за Мозила, Офиса, Хром и пр. и съответно лесно може данните да се конвертират до други формати (както е видно има поне 3 клонинга). И това е като цяло. Има едно демо за разпознаване частите на речта но нищо повече и съм спрял до там. И това нещо работи под Линукс (конзола, няма GUI). А всичко започва и се базира на тази книжка - Кръстев Б., Морфология на българския език в 187 типови таблици. С., НИ, 1984. От там нататък Читанка, Уикиречника - ги качват нещата в Уеб, комбинират ги отделните модули. И всичко това е похвално. IDI Spellchecker-а отива доста по-напред и прави доста нови неща, но за съжаление нищо не е вкарано обратно (поне по базата) и съответно това не допринася по никакъв начин за разширение на речниците за проверка на правописа за Мозила, Офиса и пр. Доколкото разбирам има две идеи. Едната е да се направи нещо ново и хипер мега яко - Словник. А другата идея е на г-н Стоян Димитров, който просто иска да разшири речника на Мозила. Разширяването на речника на Мозила е сравнително лесно постижима цел с наличните средства - все пак аз съм вкарал близо 65 000 думи по този начин. Намират се думичките, определя им се типа, вкарват се в съответните файлове - има някакви скриптове за автоматизиране на процеса, но като цяло е ръчен процес. След това има скриптове за проверка на състоянието на базата - дали думичките са вкарани в правилните файлове, дали няма някоя латинска буква вкарана (примерно латинско а) и още някоя и друга проверка (забравил съм ги вече). И след това с помощта на друг скрит се генерират речниците за Мозила, Офиса и пр. - процесът е изцяло автоматизиран. Commit достъп до SVN мога лесно да ви дам. Просто се регистрирайте http://sourceforge.net/ и ми пратете потребителското име. Като цяло няма правила за преглед и проверка. Но в случай на нужда мога да погледна дали всичко е наред. Мога да хвърля едно око на кода и да си спомня какви бяха процедурите. Голяма част от тях са интуитивни, скриптовете са с говорящи имена. Вероятността да се обърка нещо е доста малка. Така че няма проблеми. В момента като гледам по логовете има един колега, който бърника нещо по английско-българската база на речника, но това по никакъв начин няма влияние върху българската база за проверка на правописа. В проекта има три директории: 1. docs - документи, описващи някои неща - главно за мен да не ги забравя 2. data - данните - структурата е описателна и няма нужда да се чудите кое какво е. В началото на всеки файл има коментари, ако нещо съм измислял извън книгата - 187 типа ;) 3. bin - скриптове за поддръжка и генериране на речници - също е описателна и лесно се разбира кой скрипт какво прави. Мисля че трябваше да направите "export LANG=bg_BG.cp1251" и после да пускате скриптовете - иначе се получават леко странни резултати. Трябва да е описано в документите. ;) И най-лесния начин според мен е да се работи съвместно с автора на IDI Spellchecker, за да се види какво е променял и добавял той и дали може нещо от него да се изчопли и да се вкара в базата на БГОфис и съответно да се генерират речниците за Мозила, Офис, .... Поздрави, 2015-03-31 1:03 GMT+03:00 Стоян Димитров <[email protected]>: > > > На 30.03.2015 г. в 22:05, Sah War написа: > > 1. Ако знаете как, ще се радвам да създадете .txt вариант на db.sql.gz (все > пак това е SQL база от данни...), даже е добре този вариант да се раздели > на няколко отделни .txt файла, защото иначе ще е мъка да се редактира с > текстов редактор. > > Това бих могъл сравнително лесно да го направя. Просто трябва да уточним > > детайлите. > > > 1. Ами, ако просто в отделните .dat файлове са сложени различни думи според > частта на речта, към която принадлежат, то просто тези файлове трябва да се > преобразуват в .txt (UTF-8). Аз обаче не знам нищо за форма̀та за бази от > данни SQL освен това, че става въпрос за релационна база от данни. Не знам > как такъв тип файл се преобразува в .txt, затова и потърсих вашата помощ. > > > Обяснете какви подробности да обсъдим по отношение на тази дейност, за да > се разберем по въпроса. > > Ако искате структура като тази в папката data ще стане, но файловете ще > бъдат без заглавния коментар, както е в изходните файлове от хранилището, > всичко останало е постижимо. Утре вечер ще напиша скрипта, че вече е никое > време. > > Това е непосилен и безмислен труд. За набирането на този речник едва ли е > > използвана пишеща машина. Но кой знае… > > > 2. Пишеща машина?!? Кой още използва такива? Това е речник от 2012 г., > вероятно е направен на Adobe InDesign, сканиран е като черно-бял (освен > предната и задната корица). А че тази работа ще отнеме много време, е > пределно ясно. > > До колкото имам спомени в таблицата на уникод няма знак за ударено ъ. > > Другите знаци ги има, наистина не са в кирилската част на таблицата, но > поне ги има, така че като вариант остава композирането. > > > > 3. Трябва да гледате само блока > „Cyrillic<http://www.babelstone.co.uk/Unicode/babelmap.html> > <http://www.babelstone.co.uk/Unicode/babelmap.html>“ (кирилица) в Уникод; > омографите в латинските блокове на Уникод, които са визуално идентични с > кирилски знаци (с ударения), липсващи в кирилския блок, не бива да се > използват в кирилски текст, те не излизат при търсенето с Ctrl + F, защото > имат отделни заделени кодове в Уникод. В кирилския блок има само знака „ѝ“, > който се използва в българския език (а може би и в македонския?), има и > „е“, но с „обратно“ ударение, което май не се ползва в българския език (в > нашия ударението изглежда като умален вид на „\“ над дадения знак). > > „Композирането“ по Уникод е най-удачният вариант според мен, вече обясних > причините, поради които съм на това мнение (накратко: чрез уникодско > композиране за добавяне на ударения при търсене с Ctrl + F се открива както > същия низ с ударенията, така и същия низ без ударенията, което е огромно > удобство). > > Мда, това е HTML-ският аналог на уникодското композиране на знаци. И аз > > не смятам, че то е подходящо за целта. > > Да, да, много правилно. Не се бях замислял за търсенето, но не ми се > струва, че ще работи както трябва. Все пак става дума за знак, бил той и > невидим, между видимите знаци. Но това е въпрос на реализация на търсещия > алгоритъм. > > 4. За пръв път чувам, че в HTML има отделно композиране (смесване на знаци) > от това на Уникод (знам само за HTML entities), къде го има описано това в > Интернет?!? > > Мне, грешал съм. Читанката е използвала нещо друго. Иначе да, HTML-ското > комбиниране си е уникодското, но се използват видимите entities [1]. > > Колкото до сричкопренасянето — то е трудно и за да е точно (а не просто > > генерирано по алгоритъм, който често дава напълно грешни варианти за > сричкопренасяне), то трябва да се направи като ръчно написан списък със > сричките на думите. > > > 5. Има и друг проблем, който осъзнах едва сега. Трябва да се използва > правилният знак за отделяне на срички (който е „‧“ (U+2027, HYPHENATION > POINT), но в практиката се използва предимно дефисът „-“ — но това прави > проблеми, защото последното може да се счете за полуслят правопис, а е за > сричкопренасяне чрез дефис...). Но да се върна към проблема, за който щях > да кажа — трябва да има думата, дадена без разделяне на срички и после (на > същия ред) прилежащите ѝ срички, иначе може да се окаже, че > сричкопренасянето дава грешни варианти за сричкопренасяне при съвпадане на > части от думи откъм букви, което кара системата да си мисли, че > сричкоделенето е по даден начин, а той всъщност е неправилен... Сложна > работа... :\ Пък и трябва ръчно да се въведат сричките на думите... > > Разбрах ви напълно. А сега очевидния въпрос, на който отговорът > > вероятно е истеричен смях, но някой свързвал ли се е с хората от БАН, за > евентуално подпомагане на проекта? Било то с изходните кодове на речника > или по друг начин? > > > 6. Немалка част от тези от ИБЕ при БАН живеят в епохата на 1990-те и още не > са си оправили жалкото онлайн подобие на многотомния си речник > (http://ibl.bas.bg/rbe/, едва Борислав Манолов от „Читанка“ го направи > по-ползваем чрез неговия frontend на речника им: http://rbe.chitanka.info), > не можем да очакваме реална помощ от тях, въпреки че можем да се пробваме > поне да ги помолим да ни предоставят базата от данни на речника си, но > по-скоро ми се струва, че ще се заинатят и ще си държат на „авторското > право“ над базата от данни... > > Мхъм, мъхъм, номерът с авторското право, естествено. > > 7. Само тези от Секцията по компютърна лингвистика към БАН са напред с > материала > (http://dcl.bas.bg/programs_bg.html,http://dcl.bas.bg/resources_bg.html и > особеноhttp://dcl.bas.bg/dictionaries_bg.html) и само на тях възлагам > надежди. Те > имат публикувани свободни данни, като честотен речник, генериран от корпус, > които могат евентуално да се вградят в речниковата база на „БГ Офис“, но и > за тях не е ясно дали са проверени от човек за правописни грешки и дали ще > се съгласят да ни дадат базите си от данни на речниците си, което де факто > означава да ги пуснат под свободен лиценз... > > Не смятам, че е лош вариант да се смени първоизточника и за основа да се > > използва нещо по-осъвременено, не разбирам идеята да има няколко еднакви > начинания за едно и също нещо и нито едно от тях да не връща обратно за > постигане на целта на първоизточника – по-добър БГ Офис. > > > > 8. Реално няма чак толкова много речници що се отнася до spellchecker-и за > българския език, освен официалната добавка за Firefox, наречена „Проверка > на > правописа<https://addons.mozilla.org/en-US/firefox/addon/bulgarian-dictionary/> > <https://addons.mozilla.org/en-US/firefox/addon/bulgarian-dictionary/>“ > (използва myspell, може би е основана речник от „БГ Офис“?), има само > добавките „Bulgarian+English Dictionary“, „Bulgarian+German Dictionary“ и > добавка със стария иванчевски правопис, който не е актуален. Само при > онлайн речниците на българския език има по-голямо разнообразие, защото > нишата още не е доминирана от по-сложно устроен свободен онлайн речник > (какъвто ще бъде нашият проект „Словник“), само > rechnik.info,onlinerechnik.com, eurodict.com и rechnik.chitanka.info се > използват > реално, другите са с много ограничена употреба. Имам дълъг списък с такива > български онлайн речници — ако искате, ще ви го изпратя. > > Добавката използва форматиран .aff от ООо. Имах предвид главно „IDI Spell > Checker“ и речникът на Читанка. Читанката я обсъдихме като ненадежден > източник. > > Склонен съм да използвам текстова база от данни стига това да има > > някакъв резултат, въпреки наличието на структурирани данни от базата на > „Читанка“ (които по обективни причини са неизползваеми за целта). > > > 9. Просто няма друг вариант в случая, освен използването на текстова база > от данни — все пак „БГ Офис“ използва aspell и ispell (не знам дали > използва hunspell, myspell и/или enchant), които доколкото знам работят > само с текстови файлове. Поправете ме, ако греша. > > Амии, има други варианти. Една реализация е именно речникът на Читанка. > Структурата на базата е добра. Вече нещата опират до набор от инструменти, > с които се борави с тези данни. Дали ще се извеждат в текстови файлове или > данните ще се обработват по друг начин е без значение. Истината е, че в > момента мигриране към база от данни няма да допринесе с нищо, а напротив. > Инфраструктурата (скриптовете генериращи различните неща) на проекта > очевидно работи в този ѝ вид. > > 10. Сега видях от https://svn.code.sf.net/p/bgoffice/code/trunk/bgoffice/, > че .dat файловете на „БГ Офис“ са всъщност обикновени текстови файлове, а > аз си мислех, че са двоични файлове... Но всички файлове са в Windows-1251, > трябва да се конвертират до UTF-8. > > Господин Раднев, смятам, ще се съгласи с това твърдение. Аз също съм > твърдо „за“. > > 11. Мисля, че на първо време е най-добре г-н Раднев или вие, г-н Димитров, > да направите копие на всичко от „БГ Офис“ (в SourceForge) в GitHub и да си > сътрудничим по проекта там, защото просто не разбирам нищо от SVN. :D После > не би било проблем да копираме новите издания от GitHub като нови версии в > SVN-то на хостигна на „БГ Офис“ в SourceForge. > > Точно това искам да избегна. Поредното копие на „БГ Офис“. Наистина > разликата е, че то ще е общодостъпно, но все пак е копие. От друга страна > като за работа от повече хора GitHub е по-добрият вариант, несъмнено. Все > пак това е целта му. > Господин Раднев, какво е вашето мнение? От друга страна, какви са > критериите за получаване на commit права върху хранилището или части от > него? Как става преглеждането и приемането/отхвърлянето на промени правени > от други? > > П.П. Ех, писмото ми пак стана прекалено дълго. :D Май ще забравите за какво > съм писал докато четете, затова номерирах абзаците, за да ви е е по-лесно > да ги цитирате и да ги обсъдим. :) > > Поздрави, > Sah War (sahwar) > > > > _______________________________________________ > Dict mailing > [email protected]http://lists.ludost.net/cgi-bin/mailman/listinfo/dict > > [1] http://eenk.com/postavyane-na-udareniya-na-kirilitsa-s-html > > -- > С > > > _______________________________________________ > Dict mailing list > [email protected] > http://lists.ludost.net/cgi-bin/mailman/listinfo/dict > >
_______________________________________________ Dict mailing list [email protected] http://lists.ludost.net/cgi-bin/mailman/listinfo/dict
