Posted: Fri Mar 13, 2009 2:05 pm
Paulus
Какая версия AkelPad'а и Scripts плагина? Запуск скрипта производился из Scripts плагина?
Какая версия AkelPad'а и Scripts плагина? Запуск скрипта производился из Scripts плагина?
была старая... теперь всё работает.Instructor wrote: Какая версия Scripts плагина?
Code: Select all
Call("Scripts::Main", 1, "scriptToBookmarklet.js", "-savespaces", 0)
Code: Select all
Call("Scripts::Main", 1, "highlighter.js", "html", 0)
Code: Select all
Call("Scripts::Main", 1, "convertHTML.js", "-encode", 0)
Code: Select all
Call("Scripts::Main", 1, "convertHTML.js", "", 0)
Code: Select all
var useDecode = true;
Code: Select all
Call("Scripts::Main", 1, "toggleComments.js", "-nospaces", 0)
Code: Select all
выпвар- варвпр
Code: Select all
выпвар -варвпр
Code: Select all
выпвар – варвпр
Code: Select all
%REM
...
...
%END REM
Я тут уже начал потихоньку все переделывать:VladSh wrote:1. punctuationFixer.js
В старой версии тире задавалось в виде параметра:Ещё у меня к Вам просьба - вынести замену "тире на дефис" в отдельный replace и поставить там коммент, чтобы его можно было легко найти и закоментить, если, допустим, кто-то не использует такую замену.
Code: Select all
new PunctuationFixer("\u2013")
Добавил.2 а в toggleComments.js добавьте пожалуйста виды комментариев для *.lss, чтобы не забылось.
Сейчас за ссылку считается примерно следующее:3. getLinks.js сейчас, к сожалению, работает только для http. Можно ли сделать, чтобы скриптом учитывались все префиксы из настроек программы (вкладка "Дополнительно")?
Code: Select all
/[a-z]+:[^\s'"]+/i
Подправил, правда, не факт, что всё.VladSh wrote:1. _punctuationFixer.js
[кусь]
- в скобках перед последней скобкой и точкой ставится пробел, пример: (... и проч. )
Исключил числа с дробной частью из обработки.- в десятичных 1,5 выглядит как 1, 5.
Пример в студию!2. toggleComments.js:
- не снимается блочный комментарий (пределах одного скрипта сделать это, понятно, трудно... по моему, для снятия комментов лучше сделать отдельный скрипт, как было у меня);
Code: Select all
var ignoreBlockCommentsInSel = true;
Code: Select all
var comments = new Comments(
ext, commentsSets, commentsMultipleSets,
cmmParams,
addSpaces, commentsMultipleEnabled
);
selParams = comments.toggleComments(selParams);
Code: Select all
var d0 = new Date();
var comments = new Comments(
ext, commentsSets, commentsMultipleSets,
cmmParams,
addSpaces, commentsMultipleEnabled
);
selParams = comments.toggleComments(selParams);
WScript.Echo(new Date() - d0);
Code: Select all
messageBox(locale.getStr("blockCommentsInSel"));
Подправил. Всего-то нужно было добавить к регулярному выражению флаг «i».3. getLinks.js
[кусь]
- ссылка понимается только если она начинается с символа в нижнем регистре. Если первым символом идёт большая буква, то она обрезается.
Хотелось бы видеть пример ссылки.- не обрабатываются сетевые пути, т.е. всё, что ничинается с "\".
Code: Select all
текст): -> текст) :
Это да... Мне сейчас достался ноут - 2-й Celeron, 600MHz, 128 ОЗУ, с установленной XP, - я полностью прочувствовал, как запускаются скриптыInfocatcher wrote:У меня больше 50 миллисекунд не выдает – для файлов разумных размеров, разумеется. Так что основное время, видимо, уходит на запуск wscript.exe. Или на интерпретацию кода. Только вот как отделить одно от другого, я не знаю.
Code: Select all
\\Store\softstore\drivers
Да-да, так оно гораздо быстрее правится.VladSh wrote:Побуду-ка ещё бета-тестером
Таки да:1. _punctuationFixer.js:
а). Между закрывающейся скобкой и символами : ; , вставляется пробел (что интересно - перед точкой не вставляется):
[\t ] – символ табуляции или пробел.replace(/[\t ]*\)[\t ]*([^.!?])/g, ") $1"); // text)text -> text) text
Тогда не будем обрабатывать конструкции видаб). Между дефисом и закрывающим уголком '>' вставляется пробел
Если только втыкать на место курсора маркер в виде псевдослучайной строки, а потом его удалять и ставить туда курсор. Последнее изменение при таком раскладе выделить проще (точнее, это не должно сказаться на работе предыдущих замен). А вот что делать с положением прокрутки, я не знаю.в). После отработки скрипта весть текст остаётся выделенным (если обрабатывался весь файл). Лучше, конечно же, для наглядности после отработки скрипта устанавливать курсор в место последнего изменения, но из простоты можно просто переводить курсор на строку ниже первоначального положения, чтобы было видно, что скрипт отработал.
Ну, punctuationFixer.js пока что тоже есть.Да, ещё (интересно просто), почему файл скрипта начинается с подчёркивания?
Нда, жестоко...Это да... Мне сейчас достался ноут - 2-й Celeron, 600MHz, 128 ОЗУ, с установленной XP, - я полностью прочувствовал, как запускаются скрипты![]()
Да, вроде, снимает он – комментарии эти, если видит.Я просто думал, что Ваш скрипт также и снимает их - тогда лучше разделять.
Там какбэ не написано «вставить сюда /**/».По имеющемуся скрипту: если тыкнуть просто в строчку с кодом, ничего не выделяя, мне кажется, раньше было проставлении обычного комментария //, сейчас же вставляется /**/. Думаю, стоит вернуть обратно, т.к. в наборе символов /**/ особого смысла нет. Другое дело, если в строке что-то выделено, - тогда да!
Если не учитывать, что, скажем, локализованный Total Commander умеет нечто вроде3. getLinks.js:
Ссылкой это, конечно, трудно назвать - обычный сетевой путь; пример:Code: Select all
\\Store\softstore\drivers
Code: Select all
\\\Редактор реестра\HKEY_CURRENT_USER\