OOoTranslit 0.3.4

Напокон је решен проблем модалитета, т.ј. од ове верзије можете да уз једном отворен дијалог селектујете текст на страни, да померате дијалог по екрану и ослобађате видљиву површину текста документа и више пута пресловљавате различите селекције без потребе да поново отварате дијалог. Значи, нема визуелних промена али има оне веома битне и од суштинске употребе овог макроа :)

Да ли је сада овај макро ближи Врачковом за Ворд? Или је напреднији? ;) ГНУ револуција!
Преузимање: OOoTranslit 0.3.4

OOoTranslit 0.3.3

У протеклих неколико дана сам интензивно радио на макроу за пресловљавање текста за OpenOffice.org Writer. Пре свега, под мојом командом је еволуирао до употребљивог алата који на тренутак (када се позове RunTranslit функција) изгледа овако:

OOoTranslit 0.3.3
OOoTranslit 0.3.3

Седам дана по објављивању верзије 0.3.1, дошло је време да се похвалим револуционарно унапређеном верзијом :) Поред тога што једну развојну/међуверзију нисам објавио (0.3.2b), направио сам доста измена у макроу, па је ред и да их побројим:

  • упростио сам дефинисање низова писама тако да уместо шест (2×3) сада има само 3 променљиве за три писма
  • преместио сам дефинисање писама у Init подпроцедуру тако да се то чини тек кад за то дође тренутак (не пуни се меморија за бадава)
  • уклонио сам центрирање дијалога због неких грешака које сам добијао, али ћу у следећем издању вратити ту могућност
  • склонио сам макро за исправку погрешно пресловљених речи зато што је то специфична функција која ми је потребна за пребацивање ГНУзиле у ћирилицу, и мало је неоптимизована па ће је заменити прескакање пресловљавања речи које садрже слова QWYX у неком од будућих издања
  • променио сам назив макроа из 3oTrans у OOoTranslit због замисли да издвојим овај макро у посебну библиотеку пошто урадим инсталациону процедуру (у фазону макроа за Word „Macro by Vracko“
  • решио сам проблем грешке „Action not supported. Invalid Procedure call.“ при првом позивању дијалога по отварању Writer-а, а проблем је био у томе што OOo у верзији 1.1.4 не прелоадује дијалоге као што то чини са макроима, па је било потртребно учинити то пре самог позивања дијалога
  • као што се на горњој слици може видети променио сам и контроле на дијалогу додавши опцију „једно пресловљавање“ која када је омогућена затвара дијалог након пресловљавања, а имаће примену тек када решим проблем модалитета дијалога (да док је дијалог отворен корисник може да селектује текст у документу)
  • избацио сам поруку о завршеном пресловљавању јер уме да смета
  • поделио сам функцију за пресловљавање целог текста у rplAll а за изабрани текст у rplSel
  • додао сам четири функције које врше пресловљавање текста без потртребе за отварањем дијалога (дефинисањем тастерске пречице или стављањем иконица на линију алата), и то:
    • trALC — пресловљава латиницу у ћирилицу у целом тексту
    • trACL — пресловљава ћирилицу у латиницу у целом тексту
    • trSLC — пресловљава латиницу у ћирилицу у изабраном тексту
    • trSCL — пресловљава ћирилицу у латиницу у изабраном тексту

Као и обично, помоћ у решавању појединих проблема пронашао сам на OOo форуму.

Ако сте се уплашили да нећу дати линк за скидање овог „чуда“ о коме сам надробио оволико, варате се :) Преузмите архиву OOoTranslit, а процедуру инсталације описао сам у запису 3oTrans 0.3.1.

3oTrans 0.3.1

И ето, хиперпродукција на делу :) Мада сам планирао да ове измене сачувам за неки већи додатак могућности у макро, Бране Јовановић ме „натера“ да га издам овако, у раскораку :)

Дакле, новине у овој верзији су:

  1. уместо падајућих листа за писма поново враћена опциона дугмад али сада у две групе
  2. постављено подразумевано пресловљавање из латинице у ћирилицу
  3. макро за пресловљавање пребачен у модула fncTranslit а део за враћање погрешно пресловљених речи у модул fncDeTranslit
  4. додато центрирање дијалога на екрану
  5. померено задавање променљивих иза провере избора писма за пресловљавање, што ће резултовати мањим оптерећењем ресурса (занемраљиво мали, али кад већ може :)

Инсталација се своди на оно старо паковање датотека из архиве у OpenOffice.org_директоријум/user/basic/Standard/ а више детаља о додавању макроа и постављању пречица са тастатуре и иконица на линију алата у следећем издању ГНУзиле у чланку „Разговор са поводом“.

И умало да заборавим, преузимање: 3oTranslit 0.3.1

Идеја за 3oTrans

3oTrans сада има избор између транслитерације над целим текстом или над избором (селекцијом). Има три понуђена типа записа (ћирилица, латиница и YUSCII). Зашто је ту и YUSCII објаснићу касније. Оно што је преостало да се дода је непревођење у лариницу веб адреса и речи у којима се појављују енглеска слова Q, W, Y и X. Ово је могуће одрадити на два начина; на лакши и на тежи :)

Ајде прво тежи, лакше је за објаснити :) Ово важи за већ транслитерован текст у ћирилицу, где су грешком транлитероване и специфичне несрпске речи. Употребом регуларних израза за SearchDescriptor пронађе се реч која испуњава услов, а онда се ћирилични текст у избору пребаци у латиницу већ примењеним методом у макроу.

Културнији начин је прескакање речи које испуњава услов при самој транслитерацији у ћирилицу или YUSCII. У овом би случају морала или да се занемари промена над целим текстом у SearchDescriptor-у и употреби узимање сваке речи посебно у променљиву па онда ако она није реч коју не треба преводити одрадити над њом замену као над изабраним текстом, или преводити само ако реч не испуњава регуларни израз, т.ј. испуњава регуларни израз да није та реч. Ово уме да буде мач са две оштрице јер иако се у мање физичких корака посао одради, време транслитерације ће бити нешто дуже, али мислим да нико неће транслитеровати 500 страна текста :)

Е сада, регуларни изрази који испуњавају ове услове са почетка приче су:

за енглеске речи: [^\ ]*[qwyzQWYZ]+[^\ ]*
за веб адресе: (http:|ftp:|www.)+[^\ ]*
за адресе е-поште: [^\ ]*@[^\ ]*

Ух, сморих се :) Ово сигурно нећу имплементирати у наредних недељу до две дана, али после тога, сигурно ће да буде функционално.

3oTrans 0.3.0

Иако сте можда помислили да сам се успавао или ме ово лепо време одвукло у природу, делимично сте погодили. Не, нисам се успавао :) Лепо време ме је измамило из замрачене собе и удаљило од бљештавог монитора. Ових лепих дана највише поподневног времена сам провео са породицом у шетњи. Али, у међувремену се и радило :)

Прво, напустио сам Гном и прешао на XFCE 4.2.1.1. Не само да се брже подиже, већ исто толико брше и ради. А и лепо изгледа :)

Можда не толико екстремно битно, али везано за моје пројекте, OOo макро за транслитерацију текста из латинице у ћирилицу (и обрнуто) еволуирао је до верзије 0.3.0. Уз помоћ људи на ООо форуму данас сам коначно успео да оспособим замену текста у избору (селекцији). Бране Јовановић је модификовао дијалог за избор писма (пребацио опције у падајуће листе) и додао YUSCII као трећу варијацију писма. Преузмите 3oTrans 0.3.0 макро (bzip2 архива је величине око 10КБ). Инсталација се своди на копирање датотека dialog.xlb, script.xlb, Module1.xba и dlgTranslit.xdl у директоријум user/basic/Standard/ у вашем OpenOffice.org инсталационом директоријуму и додавање на линију алата (eng. Toolbar) дугмета које покреће макро RunTranslit. Када будем стигао (имао времена на претек) написаћу упутство за инсталацију макроа, или, још боље, направити инсталациону процедуру у једном ООо документу :)

Следеће – транслитерована је ГНУзила на ћирилицу, остала је још насловна страна да се пребаци (чекам да ми Чиван пошаље изворну верзију у SVG-у) и провера текста пре прављења PDF-а, па онда још само да пустимо проглас да је експермиментално издање публиковано.

Још једна занимљивост је да сам Петру изложио идеју оснивања Удружења корисника Линукса Крагујевца. Ова вест је и објављена у данашњем Гласу шумадијско-поморавском. Чим завршим са писањем текстова за Свет Компјутера и средим „Предлог правилника“ за ГНУзилу, бацићу се на организацију промовисања иницијативе за оснивање удружења и прикупљање пријава. Ако вас не мрзи, баците поглед на предлоге логотипа удружења на УКЛиК.