Изчистване на интервали между букви в думи чрез OpenOffice

Тук е обяснено как се инсталират и настройват програми под Linux.

Модератори: Freya, Kulu Ngile

Изчистване на интервали между букви в думи чрез OpenOffice

Мнениеот mylin » Чет 13, Авг, 2009 16:15

Ами помагат ми - помагам. Как да не се включиш в Линукс бандата :)

Проблем - дефекта беше текст "с т а ки в а д у ми", а обема беше "само" 130 страници. И да - между думите имаше само по един интервал, а не два (по форумите има такива случаи там решението е просто с Find/Replace).

"решение" - направих прост макрос в OpenOffice, но той беше много примитивен и с много код - аматьор съм все пак.
(може да го видите във форума - ЕТО ТУК)

Помогнаха ми.
Един админ от форума на OpenOffice ми даде код за два макроса. Самия код го цитирам най-долу. Ето как работят:

първия макрос:
- селектирате "д у м а т а" и натискате бутон
- резултат: "д у м а т а" -> "думата"

втория макрос:
- пак селектирате "д у м а т а" + "F4" (примерен Shortcut)
- резултат: почиства интервалите в "д у м а т а" на всичките 101 места в текста :)

Създадох си лентата с инструменти и бутон за макроса. Още по-удобно е директно от клавиатурата с "F4" например (трябва да създадете Shortcut) Остава да проверите правописа - аз го правя с Kedit.
-------------------------------------------------------------------------

Сега практичната част:
1. За да създадете макроса от кода който цитирам по-долу.
от меню Tools -> Macros -> Organise Macros -> OpenOffice.org Basic Macros > отваря се този прозорец натискате New
в същия прозорец натискате Edit и ще видите следния код
Код за потвърждение: Избери целия код
Sub

End Sub
изтривате го и слагате кода от единия или другия макрос

2. За да направита Shortcut - "F4" (при мен)
Tools -> Customise... -> Keyboard
- от Category селектирате вашия макрос
- от списъка над Category избирате един бутон (примерно "F4")
Е - разбира се може да си направите и диалогов прозорец за командване на макроса, но за мен "F4" е доста по-добър ход. :wink:

КРАЙ - вече сте готови

---------------------------------------------------------------------------
Забележка: Ако все пак сте любител на мишката ето как се прави следното "улеснение" - бутонченце за цъкане с мишката:

посочвате създадения от вас Toolbar + ДБМ (десен бутон на мишката) Customise Toolbar... в прозореца естествено натискате Add и си избирате името на вашия нов макрос. (ще видите новото си бутонче - може да го преименувате или да му сложите картинка)
---------------------------------------------------------------------------

Ето и кода за макросите.
Кода е от официален източник и освен това първо го прегледах, но все пак си направих теста в пробен документ - работи си.

този почиства "д у м а т а" на всичките 101 места в текста
Код за потвърждение: Избери целия код
Sub DeleteSpacesAndReplaceAll
Dim oDoc,oVC,search,aray,replace,FandR
oDoc = ThisComponent
oVC = oDoc.CurrentController.getViewCursor
If Len(oVC.String) < 1 then
 MsgBox "Quitting, no text has been selected!" : End
EndIf
search = oVC.String : aray = Split(search) : replace = Join(aray,"")
FandR = oDoc.createReplaceDescriptor
FandR.setSearchString(search)
FandR.setReplaceString(replace)
oDoc.ReplaceAll(FandR)
End Sub

този е по-прост и почиства само селектираната "д у м а" ->"дума"
Код за потвърждение: Избери целия код
Sub DeleteSpaces
Dim oVC,sel,aray
oVC = ThisComponent.CurrentController.getViewCursor
If Len(oVC.String) < 1 then
 MsgBox "Quitting, no text has been selected!" : End
EndIf
sel = oVC.String : aray = Split(sel) : sel = Join(aray,"")
oVC.String = sel : oVC.collapseToEnd
End Sub


Както виждате истинския контрол над компа става с грамотно написания и кратък код, а не с цъкане по бутончета и диалогови прозорци
(те са само лъскавата ламарина на колата, по-важното е какво има под капака) :)
Аватар
mylin
Участник
 
Мнения: 176
Регистриран на: Нед 10, Авг, 2008 14:43

Назад към Инсталиране и работа с приложения

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта

cron