Macros plugin

Discuss and announce AkelPad plugins
  • Author
  • Message
Offline
Posts: 147
Joined: Fri Feb 08, 2008 6:41 pm
Location: British Columbia, Canada

Suggestion to increase speed

Post by Surveyor »

Instructor,

I use the Macros plugin often and find it VERY useful! My most recent use was some re-work of HTML pages - large tables. I had the data in ASCII format, and used the Macros plugin to format the raw text into tables (i.e. add <tr> tags, make columns: <td>blah, blah, blah</td>. It worked well, but was very slow (12,000+ lines to process, in batches of 2000 or so). By the way, Frontpage (my HTML editor) does have a "convert text to table" feature, but it was flawed; odd character combinations (e.g. "#<>") did not convert properly, and with so many cells, I could not check every one. The conversion had to be right the first time.

In the past - using Turbo Pascal (I am not an accomplished Windows programmer!), I found that by disabling screen output until the task was finished - rather than updating screen with each loop - speed was VERY much faster! I wonder if the same could be done with the Macros plugin. That is, disable refresh until last loop is done, then refresh screen, etc. The Macros dialog could have a checkbox ("Disable refresh") - when the macro completed, the checkbox should be cleared again (i.e. do refresh) for next execution, to avoid any possible confusion.

Would this work? If so, I would be interested in seeing some speed tests. My HTML macros (±1000 loops at a time) took several minutes to complete (my computer is old and tired!). I confess that I did my project with a slightly older version of Macros (5.1), but I imagine the speed would be the same with the newest one.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Surveyor
With version 6.1 you can use MacroSpeed.js

Checkbox in GUI will be quiet dangerous.
Last edited by Instructor on Fri Sep 11, 2015 6:23 pm, edited 4 times in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Добавлено: флаг MS_INITIALIZING во внешний вызов с кодом 4.

Added: flag MS_INITIALIZING in external call with code 4.


Macros plugin v6.1

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Исправлено: синхронизация с работой скриптов.

Fixed: synchronization with scripts work.


Macros plugin v6.3

Offline
Posts: 6
Joined: Sat Aug 31, 2013 4:53 pm

Post by bugmenot »

Горячие клавиши макросов не работают, когда открыто окно "Macros плагин". Если сложно зафиксить, хорошо бы об этом хотя бы где-то написать, а то сегодня долго не удавалось понять, что же я делаю не так, что они не работают. Спасибо.

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Macros plugin

Post by Valentin »

О плагине Macros.dll

Переключение окон мышкой не записывается никак. Приходится Ctrl-Tab. Если операции делал в разных окнах, но машинально переключил окна мышкой, а не клавиатурой, то результат непредсказуем. Нельзя ли как-то сохранять любое переключение окон. Но даже если и удается нормально записать макро, повесив его например, на Ctrl-1, то пользоваться все-равно невозможно. Т.к. макро должно сработать при нажатии на 1, а оно срабатывает лишь при отпускании Ctrl. А зачем мне отпускать Ctrl, если несколько раз повторить надо?

С 2012 пользуюсь AkelPad v.4.8.0. для конвертации UTF8 в однооконном режиме. Без хороших макросов многооконность в редакторе хилая. В древности все многооконные редакторы под Dos умели без проблем работать с макросами во всех окнах. Что "me", что лексикон. Но с 2000-х макросы и для одного окна замучаешься применять из-за глючности. Разве, что в Far нет проблем. Но там ведь тоже только одно окно редактирования.

Макро глючит не только в АkelPad. В сходных редакторах тоже. О макро Crimson Editor уже когда писали. Но до сих пор cedt не умеет сохранять в макро даже клавиатурное переключение в соседнее окно. В NPP лучше уже с версии 3.1, но тоже переключение окон мышкой до сих пор не протоколируется. Хотя там это не плагин.

Кстати, спасибо за необходимый плагин, ждем улучшений.

P.S. где же смотреть версию плагина, может кто знает.

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Re: Macros plugin

Post by opk44 »

Valentin
1. Даже перечитав дважды, весьма затруднительно понять, каких именно улучшений вам надобно (мышь - см. пункт 3).
2. Для многократного повторения макроса можно, например, пользоваться основным диалогом плагина, где есть множитель запусков. Либо использовать внешний вызов (если число повторов заранее известно). В ряде случаев (но не всегда) можно преобразовать макрос в скрипт (набор SendKeys) и уже в самом скрипте управлять количеством повторов (дублированием строки или обернув вызов в цикл). Но можно всего этого и не делать, а просто отпустить Ctrl.
3. Плагин, как следует из описания, записывает и воспроизводит клавиатурные действия пользователя. Причём здесь мышь (а равно джойстик, руль, тачпад и/или прочие педали)?
4. Сугубо субъективное мнение, но то, что вы с 2012 до сих пор пользуетесь AkelPad v.4.8.0. плохо согласуется с ожиданием улучшений. Хотя бы обновите до актуальной версии редактор и плагины, а потом будем о "глючности" дискутировать.
5. Определения "плохой"/"хороший" относятся к категории оценочных суждений. Излагайте по существу.
6. Версию плагина можно смотреть в свойствах файла-dll, в файле-txt документации на плагин. Удобнее же всего через AkelUpdater.

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Re: Macros plugin

Post by Valentin »

opk44 wrote:Valentin
4. Сугубо субъективное мнение, но то, что вы с 2012 до сих пор пользуетесь AkelPad v.4.8.0. плохо согласуется с ожиданием улучшений. Хотя бы обновите до актуальной версии редактор и плагины, а потом будем о "глючности" дискутировать.

C плагином макро я использовал akelpad 4.9.8. Ожидал лучшего. Тем более, что плагину более 10 лет и у меня уже версия 6.3. Версию посмотрел по полученному совету. Оказывается я распаковал только папки Plugs и Plugs64, а версию оказалось нужно было смотреть в отдельной папке \Docs\Macros-Rus.txt или Macros-Eng.txt в которых и записано "Macros AkelPad plugin v6.3 2016".
В проводнике тоже показывает версия Macros.dll 6.3.0.0, но я сразу посмотрел в дополнительных сведениях, а там версия файла: 0,0,0,0 вот и сомневался. Хотелось бы чтобы версия вместе с датой были записаны внутри самого Macros.dll и трактовались однозначно.
Вот это первое улучшение, которого возможно не хватает в самом Macros.dll или в программе.
Ведь версию AkelPad мы вряд ли смотрим в проводнике или в установочной документации, хотя там тоже есть \Docs\AkelHistory-Rus.txt. Достаточно пункта меню Справка.

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Re: Macros plugin

Post by Valentin »

opk44 wrote:Valentin
...Но можно всего этого и не делать, а просто отпустить Ctrl.

Отпустить Ctrl ?
Вот переключение Ctrl-Tab между окнами это стандарт, т.к. применяется в большинстве редакторов. Если нужно быстро переходить из окна в окно, то часто даже некогда отпускать Ctrl. Наоборот, можно удерживать Ctrl и кликать Tab столько угодно раз.
Почему же в плагине по другому? В плагине должно быть тоже самое. Если переключение окон я делаю в Ctrl-1 вместо Ctrl-Tab, то и работать они должны идентично.
О каком количестве раз можно говорить? Кто знает столько раз потребуется переключать окна?
Вот эти настройки типа до конца файла сами за себя говорят, что идеология плагина до сих пор остается не многооконной, а ориентированной на 1 файл и 1 окно.
Кроме того, если в Ctrl-1 отпустить Ctrl, то будут печататься 11111. Такое впечатление что некоторые Alt-X двумя руками нажимают - для них и делалось. Может им и удобен такой плагин. Тем более, если кому нужно так как сейчас, то как сейчас уже есть, а стандартно - увы, нет. Версия 6.3 даже на 0.6 и то с натяжкой потянет, если в оконном режиме пользоваться.
Еще на форуме давно уже писали, что плагин не работает пока его собственное окно не закроешь. Это же очень неудобно каждый раз открывать-закрывать окно плагина. Но все еще не работает.
Имеющийся плагин Macros.dll v6.3 не то слово как неудобен, он практически неработоспособен для окон. Он даже Ctrl-Tab нормально записать не может. А альтернативы для AkelPad нет. Разве что предыдущие релизы плагина. Пишут, что первые версии плагина Macros.dll появились раньше чем я узнал о AkelPad, но я их не видел.
P.S. хотелось бы где-то попробовать предыдущие версии плагина Macros.dll. А то тут на форуме были положительные отзывы. Но old версий вроде даже на ftp сейчас нет.

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Re: Macros plugin

Post by opk44 »

Valentin wrote:...Вот переключение Ctrl-T между окнами это стандарт, т.к. применяется в большинстве редакторов. Если нужно быстро переходить из окна в окно, то часто даже некогда отпускать Ctrl. Наоборот, можно удерживать Ctrl и кликать T столько угодно раз.
Почему же в плагине по другому?...
Вы бы ознакомились с последними постами соседней ветки.
Уповать только на интуицию не всегда полезно. А при записи макроса вообще вредно пользоваться словами "быстро" и "машинально", правильные слова - "аккуратно" и "вдумчиво".

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Re: Macros plugin

Post by Valentin »

opk44 wrote: правильные слова - "аккуратно" и "вдумчиво"
Оно конечно так. С интересом ознакомился.
Но для этого и нужен редактор, чтобы текст вовремя поправить. Хотелось бы чтобы не только вдумчивые, но еще и остальные пользователи на своей актуальной версии с помощью аккуратности и плагина Macros.dll могли так записать клавиатурную команду переключения окон Ctrl-Tab в макро Ctrl-1, чтобы макро в работе от исходной Ctrl-Tab не отличалась.
Вот еще маленький вопрос в оконную сторону. Номер активного окна при работе где смотреть. А то надо же как-то окна с однотипным текстом различать, когда их много.

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Re: Macros plugin

Post by opk44 »

Valentin wrote:Хотелось бы чтобы не только вдумчивые, но еще и остальные пользователи на своей актуальной версии с помощью аккуратности и плагина Macros.dll могли так записать клавиатурную команду переключения окон Ctrl-Tab в макро Ctrl-1, чтобы макро в работе от исходной Ctrl-Tab не отличалась.
Проверил. Работает без нареканий, т.е. "не отличаются". Что не так у остальных пользователей?
Valentin wrote:Номер активного окна при работе где смотреть. А то надо же как-то окна с однотипным текстом различать, когда их много.
Имена файлов чем не устраивают, или вы имеете в виду вспомогательные не сохраненные (безымянные) вкладки? В отличие от ранее упомянутого вами "Лексикона", в котором было только 10 фиксированных окон и отдельные сочетания клавиш для перехода в каждое окно, у AkelPad-а такого ограничения нет. За каждой вкладкой закреплен свой дескриптор/хендл, который, конечно, тоже число по сути, но очень большое. Визуально видеть его нельзя. А что можно. Простое и очевидное решение - можно сохранить вспомогательные вкладки в виде файлов во временной директории под именами "1", "2", ... и т.д. В дальнейшем это на работе макроса никак не скажется. Макросу глубоко безразлично имя файла, т.к. он, образно говоря, работает с понятиями "следующий"/"предыдущий" (если работали с Excel, то примерная аналогия - стиль ссылок "R1C1" в формулах).

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Re: Macros plugin

Post by Valentin »

opk44 wrote:Имена файлов чем не устраивают, или вы имеете в виду вспомогательные не сохраненные (безымянные) вкладки?
Именно так, в первую очередь.
Про окна хотелось бы еще высказать свое мнение, но в какой теме не определился. Я создаю временные окна Ctrl-N, а все вкладки как близнецы. Вкладка активного окна вообще не выделяется ни цветом, ни шрифтом, особенно если у файлов будут сходные названия. Просто приходится помнить, что при создании активна последняя, а не первая. Вот на форумах текущая страница никогда так не обезличивается. Всегда маркер/вкладка/cсылка текущей страницы легко отличается от соседних. А вместо названий страниц всегда пишут номера. Как и в любом документе. И станиц бывает тысячи. А AkelPad, хотя бы первые 9 или даже 99 или больше вкладок хорошо бы имел с цифрами, пусть крохотными. Особенно когда они очень удобно создаются по Ctrl-N. А то приходится лишний раз заходить в меню Окно и там уже выбирать окно по номеру. Кстати, никаких длинных цифр при выборе окон я там никогда не видел. Обычные номера 1,2,3...
В какой бы теме продолжить про окна? А к плагину я еще вернусь. Вопросы остались.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Valentin
У меня нормально текущая вкладка отличается от соседних, - она выглядит намного светлее при плоском интерфейсе.
Точно не помню, но где-то вроде был параметр в "ручных установках", в котором можно было задать шаблон для имени новой вкладки (в документации не нашёл, т.к. у меня не последняя версия установлена; а вдруг мне это показалось?), чтобы, к примеру, создавалась не безымянная вкладка, а "Документ 1", "Документ 2" и т.д. Думаю, можно откорректировать шаблон, чтобы выводились только номера.
В любом случае F10 показывает список всех окон, и текущее в этом списке выделено.

Offline
Posts: 8
Joined: Tue Oct 17, 2017 10:40 pm

Post by Valentin »

VladSh wrote: В любом случае F10 показывает список всех окон, и текущее в этом списке выделено.
То-то и оно, что у меня F10 показывает пустой список и некая строка выделена, пока вручную не забьешь названия окон. И лишь меню "Окно" замечательно показывает номер окна и ставит галку на активном окне.
А шаблон имен при создании файлов я не нашел.
Post Reply