Instructor,
а можно ли сделать ещё 1 шаг в сторону превращения .coder в универсальную IDE?
а именно: приделать в автозавершение поддержку переключения между статичными атрибутами.
Что я под этим имею в виду - проще всего объяснить на примере.
Возьмём всё ту же команду
WinGet из AutoHotkey: 2-ой атрибут у неё это "cmd" который может принимать строго 1 из 14 возможных значений, иначе в коде будет ошибка.
Хотелось бы добавить все эти 14 значений в список ассоциированный со 2-ым атрибутом команды WinGet, чтобы потом когда я используя автозавершение для WinGet - при переключении на 2-ой атрибут мог выбрать значение из списка.
Если честно, то я не знаю как это можно реализовать, но добавление этого - стало бы огромным шагом по превращению AkelPad в интеллектуальную среду разработки.
Сейчас в .coder для WinGet правило автозавершения записано так:
Code: Select all
$~WinGet, OutputVar [, Cmd, WinTitle, WinText, ExcludeTitle, ExcludeText]
WinGet, $[OutputVar]
Я же прошу чтобы оно поддерживало нечто вроде
Code: Select all
$~WinGet, OutputVar [, $[Cmd$ID$IDLast$PID$ProcessName$ProcessPath$Count$List$MinMax$ControlList$ControlListHwnd$Transparent$TransColor$Style$ExStyle], WinTitle, WinText, ExcludeTitle, ExcludeText]
WinGet, $[OutputVar]
в группе
$[Cmd$ID$IDLast$PID$ProcessName$ProcessPath$Count$List$MinMax$ControlList$ControlListHwnd$Transparent$TransColor$Style$ExStyle] перечислены все возможные значения для атрибута Cmd, само название атрибута в списке идёт первым и именно оно отображается в списке автозавершения, когда пользователь пишет "WinGe".
И ещё: пожалуйста, добавьте в правила автозавершения плагина .coder какой-то спец.символ, отвечающий за пробел:
в коде что я предоставил выше - после каждой запятой у меня идёт не пробел, а символ Alt+255, который лишь выглядит как пробел, но не является даже пробельным символом. Если же вместо него использовать пробел - то правило не будет работать.
EDIT:
предложенный мной синтаксис, наверно, неверный: список $[Cmd$ID$IDLast$PID$ProcessName$ProcessPath$Count$List$MinMax$ControlList$ControlListHwnd$Transparent$TransColor$Style$ExStyle]
должен бы идти не в верхней строке правила, а в нижней. Но сам атрибут Cmd не является обязательным, поэтому не знаю как бы правильно это учесть.
Видимо, потребуется добавить ещё и поддержку необязательности кусков текста из правила автозавершения.