У протеклих неколико дана сам интензивно радио на макроу за пресловљавање текста за OpenOffice.org Writer. Пре свега, под мојом командом је еволуирао до употребљивог алата који на тренутак (када се позове RunTranslit функција) изгледа овако:
Седам дана по објављивању верзије 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.