fx21
|
Posted: Tue Mar 10, 2009 16:52 Post subject: Автоматизация скрипта AkelPad |
|
|
Для массового удаления пробелов и табуляций в конце строк текстовых файлов очень удобно использовать скрипт акельпада:
/// Delete trailing whitespaces in all MDI documents
var AkelPad=new ActiveXObject("AkelPad.document");
var hMainWnd=AkelPad.GetMainWnd();
var hWndEditFirst=AkelPad.GetEditWnd();
var hWndEditCurrent=hWndEditFirst;
var bAllDocuments=true;
while (hMainWnd)
{
AkelPad.SendMessage(hMainWnd, 273 /*WM_COMMAND*/, 4174 /*IDM_EDIT_DELETE_TRAILING_WHITESPACES*/, 0);
if (bAllDocuments)
{
//Next MDI frame
AkelPad.SendMessage(hMainWnd, 273 /*WM_COMMAND*/, 4404 /*IDM_NONMENU_MDINEXT*/, 0);
hWndEditCurrent=AkelPad.GetEditWnd();
if (hWndEditCurrent == hWndEditFirst) break;
}
else break;
}
Но у него есть один существенный недостаток: чтобы обработать все файлы, их необходимо открыть все сразу в акельпаде. Но когда таких файлов имеется 30000, то столько вкладок прога не поддерживает, и приходится загружать по 150-250 фалов, что весьма затягивает процесс.
Вопрос - как можно автоматизировать процесс, чтобы без открытия файлов, применить к ним этот скрипт? |
|