Страница 3 из 3
Добавлено: Пт авг 19, 2016 09:17
sa
Skif_off писал(а):1 и 2 работают
Ура! Значит и первый код (без кавычек) тоже.
Skif_off писал(а):работает (точнее - работает только если путь абсолютный)
Эта же команда (с абсолютным путём) работает и через командную строку TC, причём и без параметра %A в пользовательской команде, и при его наличии, и с использованием %A1…%A9.
Добавлено: Пт авг 19, 2016 11:33
Skif_off
Avada писал(а):Вправе ли мы ожидать от такой произвольной юзер-команды подхвата параметров, указанных не в ней самой, а уже в кнопке, в поле "Команда"?
Не знаю, но если ставить шире: команда и параметры будут развёрнуты в одну строку, в любом из трёх случаев она будет в итоге выглядеть так
Но в третьем работать не хочет. Я эту логику принял, но не понял смысл такой избирательности.
sa писал(а):Эта же команда (с абсолютным путём) работает и через командную строку TC
Возможно, ТС отправляет строку сам себе с WM_COPYDATA?
%A1…%A9 - это для тонких ценителей эротики, до первого пробела

В данном случае.
Добавлено: Пт авг 19, 2016 12:03
Avada
Skif_off
Берём пример третьей кнопки, но с opentabs — там всё это нагляднее. Если в юзер-команде не указать параметр, а в кнопке указать только юзер-команду, мы получим диалог открытия файла, как и должно в этом случае быть. Но если мы — внимание! — в ту же кнопку затем подставим параметром путь к TAB-файлу, то получим "Файл не найден". То есть параметры в кнопке не игнорируются (иначе опять выполнялась бы "чистая" команда opentabs), TC честно пытается учесть всю строку, но такой синтаксис ему тут явно не по зубам.
Добавлено: Пт авг 19, 2016 12:25
sa
Avada писал(а):то получим "Файл не найден"
Сообщение в данном случае относится к исполняемому файлу с указанным до пробела именем, который TC не может найти.
Добавлено: Пт авг 19, 2016 12:43
Avada
sa
Да, согласен. Что, впрочем, общей картины не меняет.
Добавлено: Пт авг 19, 2016 13:22
Skif_off
Avada писал(а):TC честно пытается учесть всю строку, но такой синтаксис ему тут явно не по зубам
...и не очень понятно, почему Гислер предпочёл такую избирательность. Или не предусмотрел вроде как ожидаемого поведения, ведь по сути em-команда с параметром в итоге получается такой же, как и прямое использование внутренней.
Добавлено: Пт авг 19, 2016 13:24
Flasher
Да чего тут обсуждать, запостить на оффорум надо, да и всё.
Добавлено: Пт авг 19, 2016 13:45
sa
Skif_off писал(а):по сути em-команда с параметром в итоге получается такой же, как и прямое использование внутренней
А есть какой-то резон использовать в кнопке em-команду вместо внутренней (команды с параметром)?
Добавлено: Пт авг 19, 2016 14:05
LonerD
sa писал(а):Skif_off писал(а):по сути em-команда с параметром в итоге получается такой же, как и прямое использование внутренней
А есть какой-то резон использовать в кнопке em-команду вместо внутренней (команды с параметром)?
Если в целом, то команды с параметрами ведь нельзя использовать в связке (когда нужно несколько команд подряд выполнить).
Добавлено: Пт авг 19, 2016 14:08
Avada
sa
В общем виде — да, есть. Поскольку одна и та же заготовка юзер-команды, будучи единожды создана, может использоваться не только в кнопке, но и много где ещё. А отсюда вытекает и второй резон. Что при необходимости проще и быстрее править — один файл usercms.ini или неопределённое число разных файлов с такими же или почти такими же вхождениями той же команды в прямой форме записи, для главного меню, для кнопок, для меню "Пуск" и избранного? (Я порадовался своей предусмотрительности, например, когда несколько месяцев назад разносил в папке TC содержимое прежнего подкаталога Utils на собственно Utils и Addons со всеми вытекающими изменениями настроек).
Добавлено: Пт авг 19, 2016 14:13
sa
LonerD писал(а):команды с параметрами ведь нельзя использовать в связке
Так и em-команда при таком раскладе будет с параметром…
Avada писал(а):править — один файл usercmd.ini
А что здесь
править?
Добавлено: Пт авг 19, 2016 15:16
Avada
LonerD писал(а):команды с параметрами ведь нельзя использовать в связке
Старые — нет, а некоторые новые — можно. Даже в новой английской справке специально ещё один пример связки добавлен:
cm_SelectAll,cm_wait 1000,cm_Copy
sa
Во-первых, я кажется, ясно выше написал "в общем виде". Во-вторых, и здесь есть что править. Причём как раз здесь, с шестью видами формата самой команды — особенно. Например, заменить
savetabs на
savetabs2.
Добавлено: Пт авг 19, 2016 15:48
sa
Avada писал(а):Например, заменить savetabs на savetabs2
Согласен, кому-то это может оказаться полезным. По сути это замена одной команды на другую без замены имени пользовательской команды, с тем же успехом можно сюда и APPENDTABS и OPENTABS вписывать (только команду тогда логичнее будет назвать em_Tabs).