Пользовательские команды и кнопки с SAVETABS

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Skif_off
Сообщения: 1255
Зарегистрирован: Ср ноя 28, 2012 13:44

Пользовательские команды и кнопки с SAVETABS

Сообщение Skif_off »

У кого-нибудь работают пользовательские команды с SAVETABS* и "%A"? Повесил кнопку на панель инструментов - получаю сообщение "Файл не найден".
Через WM_COPYDATA срабатывает, но только если не брать полное имя в кавычки (appendtabs и opentabs, например, с кавычками работают без проблем).
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Skif_off
С savetabs* без %A — да, работают во всех вариантах синтаксиса. А что не так с %A? Если там в новых бетах что-то поломалось, то для тестирования нужны конкретные примеры применения. (Да, я добавил в usercmd.ini две команды с appendtabs и opentabs вместе с %A для TabList, но исключительно для нужд скрипта, согласно ридми, а отдельно ими не пользуюсь).
Даже самая богатая фантазия
Не представит себе наши безобразия.
Skif_off
Сообщения: 1255
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

Avada

Код: Выделить всё

[em_SaveTabs]
cmd=savetabs
param=%A
Не работает, убрал param=%A - всё равно не работает, получаю сообщение "Файл не найден".
Отправка с WM_COPYDATA работает, но только если не брать полное имя в кавычки.

param=%A вообще обязательно или нет? Заглянул сейчас в справку - "вы можете", но где-то была речь о em_cd, кажется, и param=%A вроде было обязательным, с тех пор и привык.

Добавлено спустя 9 минут:

Хм... У меня и просто команды savetabs* в кнопках на панели инструментов не срабатывают...
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Skif_off
А просто (без имени файла) команды savetabs* не имеют смысла. (Да, есть параметризованные команды, работающие особым образом и без параметра. Но не эта.) Потому и пишется, что файл не найден. Что касается параметра %A, то он никогда не был обязательным и вдобавок применяется (если нужен) только для пользовательских команд.
Вообще, конечно, при выполнении команды savetabs без параметра логично было бы ожидать того же результата. что у appendtabs и opentabs (там открывается диалог выбора файла). И на это Гислеру стоило бы указать.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Skif_off
Сообщения: 1255
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

Avada
Я, похоже, несколько неудачно выразился :) Параметр есть: две кнопки, в полях команды

Код: Выделить всё

savetabs "%COMMANDER_PATH%\Tabs\savetabs.tab"
и

Код: Выделить всё

em_SaveTabs "%COMMANDER_PATH%\Tabs\savetabs.tab"
обе не работают и непонятно, какой, собственно, файл пытается найти ТС. Менял регистр (где-то был баг-репорт), убирал кавычки - никак. В разделе багов на оффоруме подобного не вижу, похоже, что-то делаю не так.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Skif_off
Скопировал из предыдущего поста первый код, создал в рабочей папке TC пробный подкаталог Tabs, создал кнопку, убрав кавычки, нажал — всё записалось. Кроме кавычек, ничего не менял. С кавычками, да, "файл не найден".
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Я, кстати, ещё с первой беты заметил, что новые команды с параметрами работают без кавычек.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Skif_off
Сообщения: 1255
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

Avada
У меня никак, срабатывает только с WM_COPYDATA без кавычек, в общем, покопаюсь ещё, за разделом багов понаблюдаю...

Flasher
По идее, логика в этом есть: параметр может быть только один, а первый пробел отделяет имя команды от параметра, но с appendtabs и opentabs кавычки работают и такое изменение несколько напрягает после привычки брать всё в кавычки :) (Полагаю, в версиях до 9.0 другие команды с параметрами так же не имеют проблем с кавычками.)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Skif_off
Меня никогда отсутствие лишнего не напрягало. Команды новые, достаточно только запомнить и делать как предписано. Ничего сложного в этом не вижу. Да и в скриптах с этим проще.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Skif_off писал(а):две кнопки, в полях команды
Первая работает только без кавычек.
Вторая не работает никак – пользовательскую команду em_SaveTabs с параметром, по-моему, из кнопки вызвать невозможно, разве из командной строки.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

sa
Пользовательские команды на основе savetabs* при отсутствии кавычек прекрасно вызываются кнопкой (как, впрочем, и иными способами). Я ими пользуюсь на протяжении уже нескольких бета-версий девятки в самых разных вариантах синтаксиса. В простейшем виде у меня команда записана так:

Код: Выделить всё

SAVETABS %Commander_Path%\Profile\main.tab
Разумеется, указанный в параметре подкаталог должен существовать.
Последний раз редактировалось Avada Ср авг 17, 2016 10:29, всего редактировалось 1 раз.
Даже самая богатая фантазия
Не представит себе наши безобразия.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Avada писал(а):Пользовательские команды на основе savetabs*
В том числе с %A в параметрах?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

sa
Да, в том числе (в тестовых целях) и с %A в поле "Параметры" em-команды. Другое дело, что я это параметр в норме здесь не использую, ибо смысла в этом не вижу (см. предыдущую страницу). Впрочем, если его надобность в данном случае кто-то возьмётся обосновать, с интересом почитаю.
Даже самая богатая фантазия
Не представит себе наши безобразия.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Avada писал(а):Да, в том числе (в тестовых целях) и с %A
Иными словами, второй код кнопки с вызовом приведённой ранее команды em_SaveTabs – работающий (при отсутствии кавычек)? Почему же у меня, как и у Skif_off, возникла проблема..?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

sa
Да, код работающий. А почему у кого-то возникла проблема, понятия не имею. И, кстати, что происходит при попытке выполнения команды? Ничего, вывод сообщения "Файл не найден" или ещё что-то?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить