Scripts discussion (1)

Discuss and announce AkelPad plugins
Locked
  • Author
  • Message
Offline
Posts: 98
Joined: Thu Jul 03, 2008 7:23 pm

Post by Tony »

Может ктонибудь сделать в OpenFileDirectory.js (viewtopic.php?t=240&start=4) проверку, что бы не выскакивала ошибка если документ не сохранённый, а выскакивало просто предупреждение :)

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

Post by VladSh »

Tony
Эти скрипты уже давно не используются и не поддерживаются за ненадобностью. Сейчас достаточно в контекстном меню:

Code: Select all

"Open file Directory" Exec("explorer /select, %f")

Offline
Posts: 98
Joined: Thu Jul 03, 2008 7:23 pm

Post by Tony »

VladSh
Большое спасибо!

Offline
Posts: 1
Joined: Mon Apr 05, 2010 6:10 am

Post by cn_user »

请问这里有懂中文的人吗?script中怎么样获取当前窗口的全部文本,我找来找去只有GetSelText,要是有GetAllText就好了。虽然SetSel(0, -1);可以实现,但我不想全选,直接获取有没有办法啊?

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

Post by VladSh »

Instructor
Огромное спасибо за такой мощный скрипт :!:
Но.. не могли бы Вы модифицировать скрипт ShowMenu.js для его большей настраиваемости?

Предлагаю:
1. Показывать меню в текущей позиции курсора, а не слева вверху.
2. Изменить кусок

Code: Select all

//Example - show menu at specified position: 
lpItems = [["ItemA", MF_NORMAL, "Value1"], 
           ["", MF_SEPARATOR], 
           ["ItemB", MF_NORMAL|MF_CHECKED|MF_USECHECKBITMAPS, "Value2"]];
на использование внешнего файла, т.е. во внешнем файле производить эти настройки, а имя используемого в данный момент файла, передавать в аргументах.
Тогда скрипт был бы универсальным, и его можно было бы использовать из разных других скриптов 8)

EDITED:
Также просьба подкорректировать TabsToSpaces.js, чтобы можно было передавать аргументами "Что" и "На что", т.е. Space на Tab или наоборот. /может тогда придётся изменить название скрипта, но это не страшно, я думаю, что из-за такой доработки люди переживут... :)/
Реализовал сам в SpacesToTabs.js.
Last edited by VladSh on Fri Jul 16, 2010 2:19 pm, edited 1 time in total.

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

Post by VladSh »

Для тех, кто будет корректировать свои скрипты.
После выхода версии 4.4.4 в результате сортировки изменились номера следующих команд:

Code: Select all

Старая                           Новая
4422  (IDM_NONMENU_FILECLOSE)   4324  (IDM_WINDOW_FILECLOSE)
4406  (IDM_NONMENU_MDICLOSE)    4318  (IDM_WINDOW_FRAMECLOSE)

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

Post by VladSh »

to All

Вопрос по JS и файлу ShowMenu.js из дистрибутива Scripts-плагина.
Можно ли формировать такую структуру

Code: Select all

lpItems=[["JS", MF_NORMAL, "js"],
         ["LSS", MF_NORMAL, "lss"],
         ["VBS", MF_NORMAL, "vbs"]];
программно (в цикле), из массива расширений, полученного из настроечного файла?
Это бы подошло и для newFileTemplate.js...

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

Post by VladSh »

[Yustas.NeO] wrote:3. Сделать чтобы вертикальный маркер можно было двигать мышкой. Приходится много текста подгонять, было бы удобнее не лазать каждый раз в настройки...
Instructor wrote:3. Не мышкой конечно, но можно так: ShiftMarker.js.
Что такое "вертикальный маркер"? Вызываю этот скрипт, но ничего не происходит... :?

Offline
Posts: 267
Joined: Mon Mar 12, 2007 3:45 pm

Post by [Yustas.NeO] »

VladSh wrote:Что такое "вертикальный маркер"? Вызываю этот скрипт, но ничего не происходит... :?
Ну, это такая вертикальная черта...
Настройки - Параметры - вкладка Редактор 1 - область Перенос - Маркер. Поставь 10, вдруг он у тебя за краями...
И заодно проверь: Вид - Цвета. Строчка Маркер случаем не совпадает по цвету с Фоном у Основного цвета?

Offline
Posts: 267
Joined: Mon Mar 12, 2007 3:45 pm

Post by [Yustas.NeO] »

VladSh wrote:SelCompleteLine.js
Подскажите, пожалуйста, а возможно ли этот скрипт использовать отдельно ото всего? Просто для выделения строки от перноса до переноса (если я правильно понял его назване). У меня почему-то не получается...


Упс, сорри, я думал что и пишу в Scripts discussion...
Last edited by [Yustas.NeO] on Tue Jun 22, 2010 7:28 pm, edited 1 time in total.

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

Post by VladSh »

[Yustas.NeO] wrote:
VladSh wrote:SelCompleteLine.js
Подскажите, пожалуйста, а возможно ли этот скрипт использовать отдельно ото всего? Просто для выделения строки от перноса до переноса (если я правильно понял его назване). У меня почему-то не получается...
Можно.
Можно глянуть как это работает в любом скрипте, его использующем, например CtrlDown.js.

Для подключения скрипта SelCompleteLine.js используем:

Code: Select all

eval(AkelPad.ReadFile(AkelPad.GetAkelDir() + "\\AkelFiles\\Plugs\\Scripts\\SelCompleteLine.js", 0xD, 0, 0)); 
Если не хотим подключать целиком, тогда копируем к себе в скрипт функцию SelCompleteLine, но в любом случае вызов будет примерно такой:

Code: Select all

SelCompleteLine(AkelPad.GetEditWnd(), AkelPad.GetSelStart(), AkelPad.GetSelEnd());
Last edited by VladSh on Wed Jun 23, 2010 7:08 am, edited 1 time in total.

Offline
Posts: 1873
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Откопал в закромах: textStatistics.js
Показывает статистику для текста.
Сам особо не пользуюсь, но, вроде бы, если и врет, то не заметно. :D

Пример вывода:

Code: Select all

---------------------------
textStatistics.js
---------------------------
Строк: 3
  - Пустых: 0

Символов: 213
  - Кириллицы: 93
  - Латиницы: 76
  - Цифр: 0
  - Пробельных символов: 20
     = Пробелы: 18
     = Табуляции: 0
     = Возвраты каретки (\r): 2
     = Переводы строки (\n): 0

Слов: 33
  - Слов (кириллица): 20
  - Слов (латиница): 13
  - Чисел: 0

---------------------------
ОК   
---------------------------

Offline
Posts: 1873
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Давно уже собирался написать: openFileIn.js (пожалуй, тестовый)
В начале скрипта задается список приложений, а файл открывается чем-нибудь вроде

Code: Select all

-"Открыть в Notepad++" Call("Scripts::Main", 1, "openFileIn.js", '"Notepad++" "%f"')
Для каждого приложения задается набор путей. Перебор осуществляется, пока не будет обнаружен существующий файл.

А то у меня были bat-файлы и утилита для скрытия консольных окон. :D

P.S. Сначала пробовал передавать пути в аргументах, но уперся в ограничение длины. :D

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

Post by VladSh »

Yustas.NeO
Установлено: Перенос "По словам", Лимит 0, Маркер 10. Пишешь слова, а они спокойно себе вылазят за маркер. Если установить Лимит = 2, то слова бьются по 2-м буквам, что непонятно, т.к. перенос остался "По словам".
Не пойму, для чего всё это...

UPD: А если использовать этот скрипт, то он переносит маркер на 0, и если поставить в вызове 10, то маркер не отображается; появляется он только после перезагрузки проги.

Offline
Posts: 267
Joined: Mon Mar 12, 2007 3:45 pm

Post by [Yustas.NeO] »

VladSh wrote:Yustas.NeO
Установлено: Перенос "По словам", Лимит 0, Маркер 10. Пишешь слова, а они спокойно себе вылазят за маркер. Если установить Лимит = 2, то слова бьются по 2-м буквам, что непонятно, т.к. перенос остался "По словам".
Лимит это "физическая" граница, а маркер - визуальная.

VladSh wrote:Не пойму, для чего всё это...
Я, например, маркер использую для стандартизации отступов в некоторых логах для клиентов.

VladSh wrote:UPD: А если использовать этот скрипт, то он переносит маркер на 0, и если поставить в вызове 10, то маркер не отображается; появляется он только после перезагрузки проги.
Скрипт двигает маркер на указанное в параметрах число...
Не может, случаем, быть так, что ты смотришь не на черту маркера а на черту активного столбца?
Locked