А у меня жалоба на 2.1.1, но если надо могу перепроверить на новой 2.2.х.
Вызываю Распаковку архива кликом по кнопке F6 с зажатым Alt
Код: Выделить всё
ControlSetMouseAction /L:U /K:A 17 /B:4 SendCommand 509Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Код: Выделить всё
ControlSetMouseAction /L:U /K:A 17 /B:4 SendCommand 509Если под конкретными ты понимаешь временны́е, то, разумеется, нет.Loopback писал(а):На самом деля я вроде и не давал каких-то конкретных обещаний.
Какая та? Вызов списка команд через запятую или какая?Loopback писал(а):Да и что-то та тема уже несколько поднадоела
Хорошо. А под "можно сделать" я имел в виду запрос, а не нынешнюю правку конфига.Loopback писал(а):Можно без скобок командой (если не нужно возвращаемое значение), можно со скобками:
Позже оценю тогда.Loopback писал(а):Но что-то мне подсказывает, что сейчас оно как-то не как задумано работает...
Значит, тогда я был ближе к истине.Loopback писал(а):но как выяснилось, возможны менее болезненные варианты.
Наверное вы забыли добавить строчку про Tweaks. Ну, и «три» бампнутьВ дистрибутив уже включены три плагина.
Меню по комбинациям кнопок. Или отдельная утилита, что в общем небольшая разница.Flasher писал(а):Какая та?
Если имеется в виду это, то сейчас как раз легко решается функциями.Flasher писал(а):Вызов списка команд
Не понял.Flasher писал(а):А под "можно сделать" я имел в виду запрос, а не нынешнюю правку конфига.
Да, все эти проблемы в стандартном действии одиночного альта. В такой комбинации при отпускании альта фокус явно передается основному окну, соответственно, новое окно не обрабатывает нажатия. Как такой вариант можно исправить в при существующей реализации я не очень представляю. Если не критично использование события именно по отпусканию левой кнопки, то по событию нажатия (просто /L) всё работает корректно.yozhik писал(а):Вызываю Распаковку архива кликом по кнопке F6 с зажатым Alt
Точно, поправил на "несколько" (на будущее, так сказать) + новый добавил.yozhik писал(а):Ну, и «три» бампнуть
Абсолютно не критично. Это уж так подумалось, что, мол, иногда редко, но бывает, что нажал на кнопку и вдруг передумал, и тогда не отпуская ЛКМ отводишь в сторону и она не срабатывает. Сделал с просто /L — работает замечательно, всем доволен. Спасибо.Loopback писал(а):Если не критично... именно по отпусканию...
Код: Выделить всё
Copy <click>
Create shortcut Ctrl+<click>
Pack Alt+<click>
Pack in place Alt+Ctrl+<click>Понял.Loopback писал(а):Меню по комбинациям кнопок.
Не только это. Но это, мягко говоря, не одно и то же. Дело же не только в возможности вызова самой последовательности, но и в короткой записи по аналогии с ТС.Loopback писал(а):Если имеется в виду это, то сейчас как раз легко решается функциями.
Ну, ты объясняешь, что сейчас нельзя сделать. Я это изначально предполагал, поэтому скорее запрашивал на будущее, чем спрашивал о нынешнем вызове.Loopback писал(а):Не понял.
Хех. Я бы точно не начинал тестировать с параметром отпускания, думал, у остальных так же, и даже предлагать не стал.yozhik писал(а):Сделал с просто /L — работает замечательно

А, ну понятно. Я-то думал ехать, а тут шашечкиFlasher писал(а):но и в короткой записи по аналогии с ТС.
Нельзя, и маловероятно, что будет можно. Альтернатива - введение обязательного разделителя функций (как ";" в паскале или С, сейчас это конец строки) и чего-то подобного анонимным функциям или, как минимум, синтаксиса для задания блока. К тому же тогда нельзя будет записать команду классическим методом, только функциональным, чтобы парсер мог добраться до блока. Да и скорее всего, от классического метода совсем придется отказаться. Стоит ли это возможности запихнуть всё в одну строку? Мне ответ очевиден.Flasher писал(а):Ну, ты объясняешь, что сейчас нельзя сделать.
Ну в принципе идея имеет место быть, но насколько это окажется сложно - надо смотреть. Системный метод вывода подсказок вряд ли заработает, т.к. у контролов дельфи свои механизмы, а на функциональных клавишах не заработает точно, т.к. весь все они - один контрол. В общем это точно не сейчас.yozhik писал(а):В качестве идеи
Они самые.Loopback писал(а):а тут шашечки
То бишь в скобках? Это разве плохо?Loopback писал(а):только функциональным
В контексте параметра или вообще во всём синтаксисе конфига?Loopback писал(а):Да и скорее всего, от классического метода совсем придется отказаться.
Не то чтобы плохо, но нецелесообразно. В развесистых командах типа AddControl командный синтаксис удобнее. Опять же, потеря совместимости, ибо:Flasher писал(а): Это разве плохо?
Во всем. Не делать же в парсере исключение под одну конкретную функцию.Flasher писал(а):В контексте параметра или вообще во всём синтаксисе конфига?
Почему одну? Ещё вложенные if-ы есть.Loopback писал(а):Не делать же в парсере исключение под одну конкретную функцию.
Код: Выделить всё
ControlSetMouseAction /L /K:S 17 /B:7 CommandExec em_TCRestartА может тогда несложно и уместно сделать чтоб DisableMarkedMenuItems рапространялся и на менюшки ShowPopupMenu? Тогда можно было бы шпаргалку из неактивных пунктов сделать. Костыль, конечно, но рабочий и вполне симпатичный.Loopback писал(а):а на функциональных клавишах не заработает точно
Код: Выделить всё
$a = 1
Test(123, If $a < 0 Then $b = 1)
Func Test($a, $b)
EndFunc
С этой командой не получится. Чисто теоретически, можно добавить поддержку функционала DisableMarkedMenuItems в ShowPopupMenu (она же создает элементы меню), но не очень хотелось бы загромождать команду. Ну можно будет подумать.DisableMarkedMenuItems рапространялся и на менюшки ShowPopupMenu
Я на днях тоже об этом думал, было бы удобно (если бы ещё у меня работалоyozhik писал(а):чтоб DisableMarkedMenuItems рапространялся и на менюшки ShowPopupMenu? Тогда можно было бы шпаргалку из неактивных пунктов сделать.
Отдельно написанная if-функция под команды, не из блочного синтаксиса:Loopback писал(а):Что за подкомандные не знаю.
Код: Выделить всё
ControlSetMouseAction /R /K:A /H:64 0 if(%"IniRead('~/R',%COMMANDER_INI%,Configuration,LanguageIni)"=WCMD_RUS.LNG,CommandExec(em_Lang),CommandExec('em_Lang Wcmd_rus.lng'))
ControlSetMouseAction ... if(%AUTORUN_TCPID%=32,ShellExec('~/SW_HIDE',prog.exe),ShellExec('~/SW_HIDE',prog64.exe))