Page 1 of 1
Добавление кнопки со счетчиком в скрипт Multi_SR.js
Posted: Wed Dec 05, 2012 8:31 pm
by shveicar
Здравствуйте.
Проблема в следующем: пытаясь по максимуму автоматизировать процессы по замене текста блоками, обнаружил для себя скрипт Multi_SR.js
Хочу сделать следующее, - добавить возможность замены выделенного фрагмента (и всех идентичных фрагментов) на счетчик начиная с 00 -09 далее 11 и т.д
Кнопка получается вида
Code: Select all
-"Замена выделения счетчиком"Call("Scripts::Main", 1, "Multi_SR.js", `"#select#" "нужен счетчик"' 0 1 1 1 4 3`)
Имеется также, функция замены фрагмента на счетчик - для регулярного выражения
Code: Select all
var f = arguments.callee; var i = f.i || 0; f.i = ++i; return "alt=" + "000".substr(String(i).length) + i + ".jpg";
Возможно ли её подредактировать для адекватного срабатывания кнопки? или это слишком проблематично..
Скрипт брал
здесь , поскольку оригинальный вариант по дате - 2010г.
Спасибо.
Re: Добавление кнопки со счетчиком в скрипт Multi_SR.js
Posted: Thu Dec 06, 2012 8:11 am
by DV
Моя считать необычным делать эти вещи из текстового редактора

Я бы посоветовал ReNamer:
http://www.den4b.com/?x=products&product=renamer
Posted: Thu Dec 06, 2012 9:32 am
by shveicar
Спасибо за совет, - но предпочитаю для похожих задач - textpipe.
Просто со счетчиками, у него проблема. Приходится, в качестве фильтра замены использовать тот же скрипт. Только скриптовый язык у него нестандартный типа vbs а на самом деле vba. Но это, отдельная тема...
В общем, в AkelPad для одной странице удобнее именно вариант с js. Можно ведь сделать кнопку, - например
Code: Select all
-"Замена выделения содержимым из буфера dj всем документе" Call("Scripts::Main", 1, "Multi_SR.js", `#select# #bufer# 0 0 0 0 4 3`) Icon("%a\AkelPadImage.dll",468)
Вот и подумал про счетчик...
Posted: Thu Dec 06, 2012 12:40 pm
by VladSh
shveicar wrote:Спасибо за совет, - но предпочитаю для похожих задач - textpipe.
Просто со счетчиками, у него проблема.
У ReNamer не видел каких-либо проблем; потому наверное его и предложили, что рабочий и надёжный.
Posted: Thu Dec 06, 2012 1:31 pm
by shveicar
У ReNamer не видел каких-либо проблем
Тогда не подскажите, - где в нем пункт вставить счетчик?
речь идет именно о тексте, а не об именах файлов..
Posted: Thu Dec 06, 2012 9:23 pm
by VladSh
Не, ReNamer с именами файлов работает. Видимо мы не поняли, что же собственно нужно.
Posted: Thu Dec 13, 2012 4:38 pm
by shveicar
Видимо мы не поняли, что же собственно нужно
Наверно - я не совсем понятно выразился, но если говорить проще, - нужна возможность, что бы при выделении в тексте определенного цифрового фрагмента (или фрагментов с идентичными цифрами и символами) и применении скрипта - происходила замена всех одинаковых значений с начала документа и до конца - на счетчик.
Вопрос в том, как преобразовать фразу
и вставить её в кнопку, в параметр "Нужен счетчик"
Posted: Thu Dec 13, 2012 6:42 pm
by VladSh
shveicar
Я прошу прощения, но лично у меня нет желания регистироваться, чтобы посмотреть, что там за скрипт или качать для этого многокилометровые сборки. Почему вы не спросите там, где скачали этот скрипт?
Простая альтернатива:
Code: Select all
var pSelText = AkelPad.GetSelText();
if (pSelText) {
AkelPad.SetSel(0, 0);
var number = -1;
for (;;) {
number += 1;
if (AkelPad.TextReplace(0, pSelText, number, 0x00000001 /*FRF_DOWN*/, false) == -1) break;
}
}
Можете допилить под свои нужды.
Posted: Sat Dec 15, 2012 12:04 pm
by shveicar
VladSh
Спасибо за помощь, - буду разбираться...
Posted: Wed Dec 19, 2012 9:39 am
by VladSh
shveicar
Оказывается скрипт Multi_SR.js принадлежит
cnnnc. Скрипт был разделен на 2;
инфа.
Есть ещё пару скриптов, не пробовал их, но возможно, какой-то и подойдёт:
NumberCount.js,
InsertNum.js.
Posted: Sun Jan 06, 2013 8:46 pm
by shveicar
Спасибо всем - проблема решилась с помощью скрипта
ReplaceOnCounter.vbs Может кому пригодиться...