Scripts discussion (3)

Discuss and announce AkelPad plugins
Locked
  • Author
  • Message
KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

FindReplaceEx.js
Added: functions "Count", "Find all" and "Bookmarks" now are available for "All files" option.

Offline
Posts: 202
Joined: Sat Mar 28, 2015 2:36 pm
Location: Russia

Post by Kley »

KDJ
Sorry, that is not in English. Problems.

Скрипт AkelPadMethodsView.js.
1. включить режим "Run in separate window";
2. свернуть AkelPad в Панель задач;
3. выключить режим "Run in separate window";
Клик мыши по иконке AkelPad, в Панели задач, не восстанавливает программу.
Можно ли это доработать? Thank you.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »


Offline
Posts: 382
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

beotiger

Есть пара пожеланий для скрипта HTMLpad.js
1. Сохранять пробельные символы слева (можно как доп. параметр к вызову), т. е. если перед обработкой есть

Image

то после вызова скрипта хочется видеть

Image


2. После работы скрипта если сделать отмену, появляется что-то

Image

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

Post by VladSh »

Cuprum
Есть давно insertStructure.js.

Code: Select all

-"[list]...[/list]" Call("Scripts::Main", 1, "insertStructure.js", `-rootOpen="[list]" -lineOpen="[*]" -rootClose="[/list]" -shift=""`)

-"<p>...</p> многострочно" Call("Scripts::Main", 1, "insertStructure.js", `-lineOpen="<p>" -lineClose="</p>" -shift=""`)
-"<ul>...</ul>" Call("Scripts::Main", 1, "insertStructure.js", `-rootOpen="<ul>" -lineOpen="<li>" -lineClose="</li>" -rootClose="</ul>"`)
-"<cite>...</cite>" Call("Scripts::Main", 1, "insertStructure.js", `-rootOpen="<cite>" -lineOpen="<p>" -lineClose="</p>" -rootClose="</cite>"`)
.

Offline
Posts: 382
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

VladSh
Спасибо.
Ну, специально я такой скрипт не искал, увидел из новых, решил распробовать.
Кстати, в вашем варианте пригодился бы параметр, убирающий при обработке пустые строки из выделенного фрагмента.

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

Post by VladSh »

Cuprum wrote:Кстати, в вашем варианте пригодился бы параметр, убирающий при обработке пустые строки из выделенного фрагмента.
Сделано. Теперь по умолчанию убирает, т.к. это чаще всего и нужно.


Добавлено: обнаружилось пара небольших косяков при случае, когда в конце выделения не текст, а строка с одним пробелом:

Code: Select all

 текст 
 
Косяк 1 - почему-то съедается символ >.
Косяк 2 - не чистится эта последняя строка (когда пустые должны удаляться, в т.ч. и состоящие из пробелов).
Помогите кто-нибудь пожалуйста, кто хорошо знает регулярки, а то я чего-то не догоню...

Offline
Posts: 202
Joined: Sat Mar 28, 2015 2:36 pm
Location: Russia

Post by Kley »

Здравствуйте. Поздравляю всех с Новым Годом!

p.s. :)
Есть вопрос по обновлению AkelPadManualSettings.js.
Почему-то AkelUpdater показывает версию "2015-12-27", а загружает "2015-12-13"?

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

Kley
The error was in KDJ.ini file. I fixed it.
AkelPadManualSettings.js latest version is 2015-12-13,
AkelPadMethodsView.js latest version is 2015-12-27.

Offline
Posts: 382
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

VladSh
Я посмотрел, с какими данными работает скрипт (WScript.Echo(lines); сразу после var lines = oCh.Text; в код скрипта)
Есть

Image

Отладка дает

Image

Почему-то последняя строка попадает в обработку, хотя она и не выделена. Может в этом причина?

Offline
Posts: 53
Joined: Wed Dec 09, 2015 6:33 pm

Post by beotiger »

Всех с Новым годом!

Cuprum, скрипт HTMLpad обновлен до версии 1.1 - HTMLpad.js 1.1

Теперь поведение скрипта такое:
1. Для всех строк сохраняется паддинг как у первой значащей (не пустой) строки, т.е. строки выравниваются по первой. Пустые строки по прежнему удалются.
2. Косяк с "левым" символом, появляющимся после отмены, убран.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

FindReplaceEx.js
Improved "Count" function:
- fixed bug: count "In selection",
- increased speed of execution,
- added manual parameter bFastCount (in FindReplaceEx.ini file) which allow even more increase the speed of execution.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

Instructor
For AEM_FINDTEXT are the following flags:
- AEFR_DOWN,
- AEFR_WHOLEWORD,
- AEFR_MATCHCASE,
- AEFR_REGEXP,
- AEFR_REGEXPNONEWLINEDOT,
- AEFR_REGEXPMINMATCH.
There is no flag for escape sequences search.
Does this mean that I need to change escape sequence into regular expression and find with AEFR_REGEXP?

Offline
Posts: 2248
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

KDJ
AP internally replaces esc-sequences into characters itself( \t becames char #9, \n becames new-line char. seq of active document 10, 13 or 1013, etc) and them performes search is if no esc-seq flag was set. See EscapeStringToEscapeDataW function in sources(Edit.c). You can do either way(but ensure everything else (un)escaped properly).

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

Post by VladSh »

Cuprum wrote:Почему-то последняя строка попадает в обработку, хотя она и не выделена. Может в этом причина?
Это нормально, т.к. курсор стоит на той строке, а значит текст будет подхватываться - setCompleteLineText() так работает. Просто надо выделять более чётко либо включать SmartSel::NoSelEOL, как раньше был у всех включен.

Там проблема чисто в регулярках.
Locked