создал из стандартного тулбара, скопировав его ToolBar-TextMain.dll и такой - же файл ToolBar-TextMain.ini из стандартного (временно, пока не настрою как полноэкранный)
поместил FullScreenWithToolBar.js в папку скриптов, создал пункты меню
SEPARATOR
-"С тулбаром по умолчанию" Call(ScriptsMain, 1, FullScreenWithToolBar.js)
-"С тулбаром для работы с текстом" Call(ScriptsMain, 1, FullScreenWithToolBar.js, ToolBar-TextMain)
при вызове любого пункта краш с сообщением
что не так?
переименовывал новые ini и dll в ToolBarMain - то же самое. TextMain - аналогично
Last edited by San_dr on Tue May 22, 2012 7:11 pm, edited 1 time in total.
-"С тулбаром по умолчанию" Call("Scripts::Main", 1, "FullScreenWithToolBar.js")
-"С тулбаром для работы с текстом" Call("Scripts::Main", 1, "FullScreenWithToolBar.js", "ToolBar-Text::Main")
KDJ
Спасибо, все получилось
ну, что еще сказать про эту замечательную программу...
я давно говорю, что польский джаз глубже и умней американского! ))))))
VladSh, тоже XPsp3, оба работают: ([^\n\r]+(\r\n?|\n)){3}(?!(\r\n?|\n)) R: \0\2 SR: $&$2 Infocatcher, у меня в скрипте с \n и \r заморачиваться бесполезно. При поиске \n вроде вообще не работает, а \r находит любое завершение строки. При замене \r ставит то завершение строки, которое установлено по умолчанию в меню "формат новой строки". А \n странно себя ведет при замене. Если она попадает после завершения строки, то игнорируется, а если после символа, то добавляет перенос строки по умолчанию. Вот так работает для любых завершений строк: .replace(/([^\r]+\r){3}(?!\r)/g, "$&\r");
В SearchReplace наоборот: (.+\n){3}(?!\n) и $&\n
А вот в Replace поиск действует так же как в SearchReplace(кроме .), но замена чувствительна и \r в замене обозначает именно символ \r, а \n - \n. Поэтому вот так: ([^\n]+(\n)){3}(?!\n) и \0\2
Мне нужна программа, расширяющая возможности AkelPad, но я не знаю что это должно быть, плагин или скрипт. Мне посоветовали обратиться сюда, т.к. ее вроде возможно реализовать при помощи скрипта. Ничего подобного я на форуме не нашел (может плохо искал).
Программа должна уметь делать примерно следующее. В одну из вкладок загружается структурированный файл, информация в котором помещена внутри специальных меток (что-то типа тегов в HTML файлах). Каждая пара меток уникальна.
Пример: <01>информация 1</01>; <02>информация 2</02> и т.д.
Во вторую вкладку помещается шаблон со вставленными аналогичными метками, но без информации.
Пример: <H2><01></01></H2> <P><02></02></P>
Необходимо, чтобы после запуска требуемой мне программы информация скопировалась из меток вкладки файла с информацией в соответствующие метки вкладки с шаблоном, а метки в шаблоне, после копирования, уничтожились.
Пример: <H2>информация 1</H2> <P>информация 2</P>
Информация для копирования ищется во всех неактивированных вкладках и переносится в активированную.
Уничтожать или нет метки в шаблоне устанавливается в настройках.
В настройках прописывается список из каких меток в какие должна копироваться информация.
Вот что примерно требуется. Если нужно, могу написать подробнее, предоставить примеры файлов.
Не взялся бы кто-нибудь написать такой скрипт, и что для этого требуется от меня?
Пишите в личку.
/**************************************
Usage
1. AkelPad in MDI/PMDI mode.
2. Open only two files:
- first - template file,
- next - file with info.
3. Run this script.
4. If not errors, result is in new tab.
**************************************/
var sText = AkelPad.GetTextRange(0, -1);
var oRE = /(<([\s\S]+?)>)([\s\S]+?)(<\/\2>)/g;
var aInfo = [];
var aExec;
var i;
while (aExec = oRE.exec(sText))
aInfo.push([aExec[1] + aExec[4], aExec[3]]);
if (aInfo.length)
{
AkelPad.Command(4316 /*IDM_WINDOW_FRAMENEXT*/);
sText = AkelPad.GetTextRange(0, -1);
for (i = 0; i < aInfo.length; ++i)
{
oRE = new RegExp(Escape(aInfo[i][0]), "g");
sText = sText.replace(oRE, function(sMatch, nPos, sString) {return aInfo[i][1];} );
}
AkelPad.Command(4101 /*IDM_FILE_NEW)*/);
// AkelPad.SetSel(0, -1);
AkelPad.ReplaceSel(sText);
}
function Escape(sStr)
{
return sStr.replace(/[\\.^$+*?|()\[\]{}]/g, "\\$&");
}
Есть необходимость в лог-файле, где бы отражалось дата и имя открытых и напечатанных файлов (в т.ч. и напечатанных в пакетном режиме).
Просьба помочь практически, т.к. в скриптах не силен.