Помогите написать скрипт
- Author
- Message
-
Offline
- Posts: 1161
- Joined: Sun Oct 20, 2013 11:44 am
AkelPad с плагином LineBoard подсвечивает цветом сохранённые и несохранённые строки, возможно ли написать скрипт, чтобы по ним можно было перемещаться? Типа Перейти к следующей несохранённой строке, предыдущей и по сохранённым. Вполне достаточно перехода в начало строки. Отменить/Повторить не очень удобно.
-
Offline
- Posts: 4
- Joined: Sun Mar 15, 2015 8:16 pm
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Господа, а помогите написать скрипт, который бы заменил мне команду
Эта команда изменяет выделенный текст так, что он обрамляется разного рода кавычками и т.п.
variableName превращается в
Это мне нужно для отладки моих ahk скриптов, чтобы проверять содержимое переменных.
Для проверки переменных используется команда OutputDebug.
Соответственно, надо чтобы скрипт превращал выделенное слово не только в обрамлённое кавычками это же слово, но ещё и дописывал бы в начало строки имя команды (+ пару символов).
Если я просто допишу вставку слова OutputDebug в команду выше, то это слово будет вставляться каждый раз, соответственно если я в одной строке (в одной команде outputdebug) захочу вывести содержимое нескольких переменных, то каждая из них будет обрамлена не только запятыми, но и именем команды.
А надо, чтобы в строке имя команды OutputDebug встречалось только 1 раз, т.е. нужен скрипт который бы делал проверку на присутствие в строке OutputDebug в начале строки (по regex).
при выделении слова variableName и срабатывании скрипта должно превратиться в
а при выделении слова anotherVar и срабатывании скрипта в строке
строка должна превратиться в
перед OutputDebug в строке может присутствовать любое кол-во пробельных символов (т.е. \s*+).
Code: Select all
Insert('"\s: \[0027]" \s "\[0027]`n" ', 1)
variableName превращается в
Code: Select all
"variableName: '" variableName "'`n"
Для проверки переменных используется команда OutputDebug.
Соответственно, надо чтобы скрипт превращал выделенное слово не только в обрамлённое кавычками это же слово, но ещё и дописывал бы в начало строки имя команды (+ пару символов).
Если я просто допишу вставку слова OutputDebug в команду выше, то это слово будет вставляться каждый раз, соответственно если я в одной строке (в одной команде outputdebug) захочу вывести содержимое нескольких переменных, то каждая из них будет обрамлена не только запятыми, но и именем команды.
А надо, чтобы в строке имя команды OutputDebug встречалось только 1 раз, т.е. нужен скрипт который бы делал проверку на присутствие в строке OutputDebug в начале строки (по regex).
Code: Select all
variableName
Code: Select all
OutputDebug, % "variableName: '" variableName "'`n"
Code: Select all
OutputDebug, % "variableName: '" variableName "'`n" anotherVar
Code: Select all
OutputDebug, % "variableName: '" variableName "'`n" "anotherVar: '" anotherVar "'`n"
-
Offline
- Posts: 3217
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
-
Offline
- Posts: 3217
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Drugmix
Зачем регэксп?
Зачем регэксп?
Code: Select all
// получаем выделенный текст:
// ...
// получаем строку целиком:
// str = ...
if (str.indexOf('OutputDebug') == -1)
// делаем одно (вар-1)
else
// делаем другое (вар-2)
-
Offline
- Posts: 1161
- Joined: Sun Oct 20, 2013 11:44 am
-
Offline
- Posts: 6
- Joined: Thu Apr 09, 2015 10:37 am
Вот:Instructor wrote:Приведите пример исходника и желаемого результата.
https://yadi.sk/d/hNe9Cwk7ftAtQ
Внутри две папки "было" и "стало" соответственно.
В принципе, скрипт DelEmptyLines убирает пустые строки, надо лишь к нему добавить удаление нотабеноидских хвостовиков.
-
Offline
- Posts: 6
- Joined: Thu Apr 09, 2015 10:37 am