Ascaron Systems
Да се научим да пиша макроси за OpenOffice
Необходими техники за професионална работа с текст. Показва пример за използване на макроси и регулярни изрази.
Цел: Да се направи обработка на текст за изделията:
- премахне всички пространства и раздели от началото и в края на абзац,
- Замяна на всички тиретата в таблото в текста, включително и в началото на параграфа.
Един пример е даден за версията на OpenOffice 2.4.0
Стандартен разтвор:
търсене и замяна, натиснете Ctrl + F
В примера пишем регулярен израз премахва интервали и табулатори в началото на абзац.
Какво мога да кажа? Универсално. Но четири пъти на всяка статия, за да пишат регулярен израз Мисля, че твърде дълго.
Друго решение:
Необходимо е да се напише макрос. Много е лесно. В OpenOffice добър руски документация и има вградена поддръжка за регулярни изрази.
Намери меню Инструменти → → Makrosy Макро → на OpenOffice.org BASIC.
Създаване на макрос, например, под Typograph за името.
"Тук сме се инициализира обекти
Дим Doc Както Object
Дим Сменете Както Object
"Посочете обекта, който ще работи
Doc = StarDesktop.CurrentComponent
"Създаване на обект от тип ReplaceDescriptor
Сменете = Doc.createReplaceDescriptor
"Механизъм работи с регулярни изрази
Replace.SearchRegularExpression = True
"Премахване на разделите и интервали в началото на параграфа
Replace.SearchString = "^ (| \ т) *"
Replace.ReplaceString = ""
Doc.replaceAll (Замяна)
"Премахване на разделите и пространства в края на параграфа
Replace.SearchString = "(| \ т) * $"
Replace.ReplaceString = ""
Doc.replaceAll (Замяна)
"Замяна тирета с тирета в средата на текста
Replace.SearchString = "-"
Replace.ReplaceString = "-"
Doc.replaceAll (Замяна)
"Замяна тирета с тирета в началото на параграфа
Replace.SearchString = "^ -"
Replace.ReplaceString = "-"
Doc.replaceAll (Замяна)
End Sub
Запазване и затваряне на прозореца на BASIC. Вече не е необходимо. Сега ние трябва да се уверите, че макроса, озаглавена «Typograph» извиква с натискане на, например, Ctrl + Shift + D.
Отидете на Инструменти → Тинктура:
Задайте клавишната комбинация за макроса.
Може да видите прозорец за грешка:
Не се страхувайте. Само си представете, че сте инсталирали OpenOffice версия без JRE. Натиснете неколкократно «OK» и продължи. Всичко работи добре, без да JRE.
Сега упражнява! Подобряване на макроса. Нека го заменя с последователност на една или повече знака и разделите с едно място около текста. Изразът за последователността търсене на герои са интервали прилича (| \ т) +.