Այ֊այստեղ կայ Բարաթեանի բառարանի pdf նիշք։
Իր հետ, սակայն շատ բան չես անի՝ armscii-8 կոդաւորում, տպելու համար նախատեսուած ֆորմատ։
Իսկ մեզ (յուսով եմ ոչ միայն ինձ) կրկին պէտք է էլեկտրոնային ազատ ֆորմատի բառարան, չէ՞։ Ահա, ստացայ։
Ներբեռնել ստարդիկտ ֆորմատով այստեղ։
ելատեքստը, որի միջոցով ստացայ տաբ֊երով բաժանուած նիշք՝ այստեղ։
եւ ինքը՝ տաբ֊երով բաժանուած նիշքը որպէս աղբիւր՝ այստեղ։
վայելէք։ (:
հ․ գ․
մի քիչ պատմեմ գործընթացի մասին։
նախ, ես փորձում էի կիրառել poppler փաթեթի pdftotext֊ը, փիդիէֆ նիշքից տեքստ ստանալու համար։
սակայն կար հիմնական երկու խնդիր․
առաջին խնդիրը՝ կոդաւորումների հետ խառնաշփոթն էր։ լռելեան pdftotext֊ը ենթադրում է որ -enc UTF-8 արգումենտը։ ի դէպ, առաջ դա -enc Latin1 էր։ Ինչեւէ, այդ դէպքում, տրանսկրիպցիան ճիշտ էր երեւում, իսկ բառարանի հայերէն armscii-8 տեքստը դառնում էր մուլտիբայթ անհասկանալի մի բան, ինչ֊որ փչացած կոդաւորում։
եթէ կիրառում էի -enc Latin1, ապա pdftotext֊ը միայն Latin1 սեգմենտի տառերն էր վերցնում գրքից, իսկ Լատին մէկի ոչ բոլոր նիշերն են ընկած armscii-8֊ի տիրոյթում, եւ տառերի մի մասը կորում էին։
լուծեցի այսպէս՝ երկու նիշք էի ստանում, utf-8 եւ ucs-2 արգումենտներով։ առաջինից վերցնում էի տրանսկրիպցիաները, երկրորդի մէջ ամէն armscii-8 նիշը դառնում էր երկու բայթ, որի առաջին բայթը 00 էր, իսկ երկրորդը՝ նոյն այդ armscii-8 նիշը, եւ այսպէս 00֊ն արհամարհելով լինում էր աշխատել։
երկրորդ խնդիրը՝ այդ տեքստը չափազանց ոչ ռեգուլյար տեսք ունէր, ու կոդի մէջ լիքը բացառութիւններ էի աւելացնում։
երբեմն տողերն էին խառնուած, իսկ մի անգամ, ասենք bethink բառի տրանսկրիպցիան, թռել֊գնացել էր էջի վերջը։
Եւ դա արդէն լուծւում էր միմիայն ահաւոր շատ բացառութիւններ եւ ֆիքսումներ անելով տեքստի մէջ։
Բնական է, ես սկսեցի ատել այդ կոդը։
Փորձեցի լիքը այլ գործիքներ փիդիէֆ֊ից տեքստ ստանալու համար, ներառեալ podofo, ghostscript, եւ abiword (որը պարզւում է կարելի է հրամանային տողից աշխատեցնել, ասել որ կոնուերտի, բայց դրա ելքը նոյնն էր, ինչ pdftotext֊ինը, հաւանաբար այն պոպլերից էր օգտւում)։
մնացածի ելքն էլ ինձ չէր բաւականացնում՝ էլի խառն էր եւ անորակ։
Պարզւում է, սիրելիներս, մենք չունենք լաւ աշխատող ազատ գործիք, որ կարողանում է փիդիէֆ֊ներից տեքստ հանել։ atril֊ում էլ երբ մի բառ նշում ես, ուրիշ տեղ է նշւում։ Այդ իմ նիշքի դէպքում, բնականաբար։ (:
Ստիպուած եղայ փորձել սեփականատիրական acroread։ Տեսնեմ՝ այն ունի հրամանային տողի արգումենտներ (acroread -help), բայց, աւաղ, կարողանում է այդպէս միայն postscript նիշք տալ, եւ ոչ թէ տեքստ։ Իր տուած postscript֊ի մէջ ինձ անհրաժեշտ բան չգտայ, շատ բարդ եւ խառը ելք էր։ Այդ ծրագիրը նաեւ կարող է տեքստ տալ, բայց ոչ հրամանային տողից, այլ file – save as text ընտրելով, ու այդ տեքստը բաւական լաւ կազմ ունի։
Այդ տեքստն էլ օգտագործեցի, կոդն էլ սիրունացաւ։ Դա այն չէ, ինչ ես ուզում էի, քանի որ հիմա ես գիտհաբի շտեմարանում ունեմ որպէս աղբիւր այդ ակրորեադի տուած տեքստը, իսկ ուզում էի քաշել կայքից բարաթեանի բառարանի փիդիէֆ֊ը՝ որ փիդիէֆ֊ից մինչեւ ելքային ստարդիկտ նիշքեր ամէնը կատարուի աւտոմատացուած։
Ակրոբատի ելքն էլ էր պարունակում փչացած կոդաւորում, ինչպէս եւ պոպլերինը, երբ UTF-8 կոդաւորումն է ընտրած։
Հայերէն տեքստը պարունակում էր տարօրինակ շատ c2 եւ c3 նիշեր։
Ուշադիր նայեցի, c2֊ին յաջորդող թիւը՝ դա եղած տառի armsci կոդն է։ իսկ c3֊ից յետոյ գտնուողը պարզ չի ինչպէս է փչացել։ յետոյ նկատեցի, որ overflow է եղել իր կոնուերտացիայի ժամանակ, որը ես կարող եմ կոմպենսացնել, c3֊ին յաջորդող նիշին գումարելով 64։
Ահա, այդ պատճառով իմ կոնուերտեր մոդուլը կատարելագործուեց, ու հիմա ունի corrupted ArmSCII-8 to UTF-8 կոնուերտող ֆունկցիա։
Մնացած մանրուքները լաւ չեմ յիշում։ Կուզէի գտնել լաւ կոնուերտեր ու գործընթացը դարձնել լրիւ աւտոմատ։