SpecialChar plugin

Discuss and announce AkelPad plugins
Post Reply
  • Author
  • Message
Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

F. Phoenix wrote:Обновился, и в свойствах DLL стоит 5.0.0.0...
Подправил.

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

Instructor wrote:Andrey_A_A
Исправлено.
Спасибо, теперь работает!

Подскажите, через скрипт можно уже вызывать?, у меня не вызывается

Code: Select all

Plug = "SpecialChar::Main"
sc = AkelPad.IsPluginRunning(Plug)
If sc = 0 Then Call AkelPad.CallEx(4, Plug)
Call AkelPad.Call("SpecialChar::Settings", 1, "3,7", "0", "0", -1, -1)
Сам плагин включается, а новая настройка не передается

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

Post by Instructor »

Andrey_A_A wrote:Call AkelPad.Call("SpecialChar::Settings", 1, "3,7", "0", "0", -1, -1)
См. Scripts плагин 11.6

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

См. Scripts плагин 11.6
Спасибо заработало, хотелось бы параметра для "сброса" отображения спец символов, сейчас, чтобы установить другие спец символы, приходится делать так:

Code: Select all

PLS = "SpecialChar::Settings"
Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1) : Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1)
и после этого

Code: Select all

Call .Call(PLS, 1, "8", "0", "0", -1, -1)
хотя и так работает

Code: Select all

' SwitchSpecialChar.vbs
'========================   Описание   =====================================
' Переключение между отображением специальных символов
'========================   Примеры   ======================================
' -"Показать специальные символы (по кругу)" Call("Scripts::Main", 1, "SwitchSpecialChar.vbs")

' используется FunctionsINIRW.vbs, который следует положить в ...AkelFiles\Plugs\Scripts\Include\

' Автор:           Аверин Андрей
' Версия:          1.0 (11.09.2012)
' Mail:            Averin-And@yandex.ru
' Site:            http://tc-image.3dn.ru/forum/9-650-3191-16-1347435910
'===========================================================================
P = 0 : If WScript.Arguments.Count > 0 Then P = CInt(WScript.Arguments(0))
With AkelPad Call .Include("FunctionsINIRW.vbs") : FileSetting = WScript.ScriptFullName
Plug = "SpecialChar::Main" : PLS = "SpecialChar::Settings"
Value = CInt(ReadINI(FileSetting, "Argument", "Param")) + 1
sc = .IsPluginRunning(Plug) : If sc = 0 Then Call .CallEx(4, Plug)
Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1) : Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1)
Select Case Value
Case 1 Call .Call(PLS, 1, "1,2,3,4,5,6,7", "0", "0", -1, -1) ' специальные символы
Case 2 Call .Call(PLS, 1, "1,2,3,4,5,6", "0", "0", -1, -1) ' пробелы и табуляции
Case 3 Call .Call(PLS, 1, "3,7", "0", "0", -1, -1) ' новая строка и перенос строки
Case 4 Call .Call(PLS, 1, "8", "0", "0", -1, -1) ' линия отступа
Case 5 Call .CallEx(4, Plug) ' отключение плагина
End Select

If Value = 5 Then Value = 0
Call WriteINI(FileSetting, "Argument", "Param", Value)
End With
WScript.Quit

[Argument]
Param=0

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

Post by VladSh »

Andrey_A_A
Я тоже такой скрипт написал на js, но хранение в ini текущего состояния не катит, т.к. в меню могут оставить прямые вызовы функции плага:

Code: Select all

   "Пробелы и Табуляции" Call("SpecialChar::Settings", 1, "1,2,4,5,6", "0", "0", -1, -1)
т.е. произойдёт расхождение.

Тут 2 варианта: в плаге нужен либо метод определения состояния (что, по моему, хуже) либо параметр для сброса всех установленных флагов (что было бы здорово).

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

но хранение в ini текущего состояния не катит
чем это оно не катит
1. Я по кругу прошёлся, выбрал себе линии - пользуюсь ими, включаю/выключаю плагин по Ctrl+B

2. Если мне надо другое, прошёлся по кругу, выбрал и вкл/выкл плагин
в меню могут оставить прямые вызовы функции
Ну и пусть в меню будет - оно как раз показывает реальную картину на данный момент: какие могут подсветиться символы при Ctrl+B

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

Post by VladSh »

Andrey_A_A wrote:Ну и пусть в меню будет - оно как раз показывает реальную картину на данный момент
Что будет, если отжать галку или нажать другую, а затем опять выбрать пункт меню со скриптом?

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

Что будет, если отжать галку или нажать другую, а затем опять выбрать пункт меню со скриптом?
скрипт перейдёт к следующему условию
т.е. отобразит те символы, которые будут в следующем условии- всё просто - не вижу проблемы

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

Post by Instructor »

Andrey_A_A wrote:...делать так:

Code: Select all

PLS = "SpecialChar::Settings"
Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1) : Call .Call(PLS, 1, "1,2,3,4,5,6,7,8", "0", "0", -1, -1)
Этот код просто устанавливает значения всех настроек как у первого пункта, т.е. у 1 (пробел).

Для отключения всех символов используем:

Code: Select all

Call("SpecialChar::Settings", 1, "1,2,3,4,5,6,7,8", "0", "0", 0, 0)

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

Post by VladSh »

Instructor wrote:Для отключения всех символов используем:

Code: Select all

Call("SpecialChar::Settings", 1, "1,2,3,4,5,6,7,8", "0", "0", 0, 0)
Это именно то, что нужно. Спасибо.

Скрипт положил туда, где все "свитчеры".

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

Instructor wrote:
Для отключения всех символов используем:

Code: Select all

Call("SpecialChar::Settings", 1, "1,2,3,4,5,6,7,8", "0", "0", 0, 0)
Спасибо!

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

Post by VladSh »

SpecialChar v5.1
Пытался отключить галки с цветами для всех символов (думал, что плаг сам определит наилучший цвет; - у меня всё ещё на тёмном фоне проблемы отображения), но при включении этих символов галки всё равно появляются и виден старый цвет.

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

Post by FeyFre »

Всё-таки мне кажется что это баг картынка

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

Post by Instructor »

FeyFre
Исправлено. Будет доступно после релиза 4.8.0.

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

Post by Instructor »

Исправлено: обновление линии отступа на соседних строках.

Fixed: update indention line on neighboring lines.


SpecialChar plugin v5.2
Post Reply