Неправильно генерируются короткие имена по шаблону %p%s2

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

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

Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Баг зарепортил.
Зря ты в общую кучу всё мешаешь. Я же указал на конкретику:
Flasher писал(а): это баг для %p. Он берёт не общий родительский каталог, а вычленяет его из элемента под курсором
То же и в отношении %s, т.к. связь их даёт только кавычки, но обрабатываются они отдельно друг от друга.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Flasher,
С голым %p у меня всё работает правильно, путь всегда одинаков.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV
Т.е. если ты в режиме DirBranch поставил курсор на файл из одного каталога, вывел %p, потом для файла из другого, то у тебя показывает один путь?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Я тестировал по сценарию, описанному в багрепорте.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Я пишу про элемент под курсором для разных родителей. Проверь.
Гислер даже до сих пор не въехал.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Положил в каждую вложенную папку по файлу, нажал Ctrl+B в верхней папке, покликал кнопку, везде %p даёт правильный путь к папке файла под курсором. Или что не так?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Вот именно! Это и есть не так, как должно быть. Должен быть общий каталог, как в случае %P.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

А, теперь всё встаёт на свои места. Как раз-таки про это Гислер и ответил, что издавна %p работает именно так, и что менять это он не хочет.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Бред какой-то. Почему поведение %p должно отличаться от %P? Нездоровая у него локика.
Типа потому, что %n даёт только имя в от отличии от %N?
Ну, поменяет он оба параметра, и что с того? Кому от этого будет хуже? Работоспособность в старых кнопках с %p%n никуда не денется. Зато с %s проблем не будет.
Можно, конечно, подумать, что кто-то использует %n и %p отдельно в режиме DirBranch, но что-то сомнительно, что подобное кому-то требуется.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Мне тоже сомнительно, кто в здравом уме может использовать короткую %n отдельно от %p... Но Гислер порой чересчур консервативен.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

gryja писал(а):Кроме того, параметры командной строки, проставленные после батника рассматриваются не как параметры батника, а как параметры программы NirCMD.
Да, ну конечно? Советую заглянуть с конца в топик "Обмен кнопками" и убедиться в ряде приводимых вариантов. Если что-то не пошло, то можно взять всю запись после execmd в кавычки.
gryja писал(а):Запускать COMMAND.COM без NirCMD я не хочу, так как проблемы всё равно не решаются, а запуск от NirCMD выглядит красивее.
command.com? На WinXP+ она не задействована. Там cmd.exe, как несложно отследить в процессах. А желание скрывать программу одной nircmd не ограничивается, существует масса куда более ёмких вариантов (пример).
MVV писал(а):Но Гислер порой чересчур консервативен.
Этого, увы, не отнять...
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
gryja
Сообщения: 13
Зарегистрирован: Вс ноя 20, 2016 23:43

Сообщение gryja »

Так работает:

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

param="SET "N=N"&"%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
а так не работает:

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

param=""%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
Ну, что-то новенькое. Жаль только, баг не исправит...

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

Так тоже работает:

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

param="ECHO&"%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
Добавлено спустя 7 минут:

Это частично решит проблему - в слишком длинной строке будет просто обрезаться 3-й путь.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Жаль только, баг не исправит...
Баг с комбинацией %p%s уже исправлен в тотале, который будет опубликован уже сегодня.
Так тоже работает:
Эти нюансы уже могут быть специфичны для nircmd. Точно знаю, что для cmd.exe нужно написать правильную комстроку и взять её снаружи в пару лишних кавычек.
Кстати, ты приводишь фрагменты INI-файла (коим по сути является BAR-файл), там внешние кавычки удаляются функцией чтения - лучше тестируй, редактируя поля в свойствах кнопки, а потом уже смотри в BAR-файле, как они сохранились.
Это частично решит проблему - в слишком длинной строке будет просто обрезаться 3-й путь.
А от этого лекарство уже было названо - %WL.
Ответить