Переход по указанному в буфере пути или ключу реестра

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

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

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

Сообщение Flasher »

WindR
Так а при чём тут имя папки тогда? Относительные пути я и не рассматривал. В каких случаях это может быть полезным? Я догадываюсь, но тем не менее.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

Flasher
Git, например, выводит относительные пути:

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

D:\vcpkg>git fsck
error: inflate: data stream error (incorrect header check)
error: unable to unpack header of .git/objects/0e/8554af67c79f9d321308fdd695b30ee84c1e86
error: 0e8554af67c79f9d321308fdd695b30ee84c1e86: object corrupt or missing: .git/objects/0e/8554af67c79f9d321308fdd695b30ee84c1e86
error: inflate: data stream error (incorrect header check)
error: unable to unpack header of .git/objects/56/52d7bd7ea732eeed400fe56ffccd0e02498afb
error: 5652d7bd7ea732eeed400fe56ffccd0e02498afb: object corrupt or missing: .git/objects/56/52d7bd7ea732eeed400fe56ffccd0e02498afb
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

WindR
Понятно. Туда же xml/html и т. п. Обновил.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

Flasher
Вышеуказанные пути не распознаёт, например:

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

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

Сообщение Flasher »

WindR
Прекрасно распознаёт. Папка .git должна быть в списке активной панели.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

Flasher
Не распознаёт путь когда подпапка из пути отсутствует, например, в .git/objects/0e/8554af67c79f9d321308fdd695b30ee84c1e86 подпапка 0e и её содержимое удалено. Т.е. по .git/objects/ переходит, а .git/objects/0e уже не распознаёт.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

WindR
Так это логично. Так и должно быть. Как можно распознать то, чего нет? Изображение
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

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

Сообщение Flasher »

WindR
Какой такой? То, что приведено выше, реестра не касается.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

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

Сообщение Flasher »

WindR
Не совсем логично. Я изначально рассматривал этот вариант, но он сразу отпал по той простой причине, что папка в списке может оказаться единственной, то бишь корнем диска. Переходить в корень диска или, скажем, в папку первого уровня из большой цепочки, находясь уже в некой цепочке нужного диска, с потерей фокуса в подавляющем большинстве ситуаций нецелесообразно, это только создаст проблему в юзабильности. В случае относительных путей мы рассматриваем не относительный путь, а весь с корнем. В итоге мы можем попасть совсем не туда, куда надо. Я специально сделал умный вариант с переходом в рабочую папку, т. к. обратность одиночного слэша будет служить маркером для рассмотрения потенциальной разветвлённости синтаксиса в компонентах путей цепи. Банальный поиск вышестоящей папки эту логику тут же поломает. Это касается и самого сообщения о несоответствии, т. к. в случае наличия хотя бы буквы диска оно перестанет иметь силу, ибо пользователь и так осознаёт, есть ли у него эта буква на текущий момент.
С реестром же ситуация иная, т. к. там очень часто приходится дописывать отсутствующие ключи, чтобы добиться нужного функционала.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

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

Сообщение Flasher »

WindR
В смысле отбрасывает? Результат поведения какой? Появление сообщения. Так?
Вообще, конечно, можно рассмотреть относительные пути отдельно от полных. Посмотрю, ощутимо ли это скажется на скорости, позже дам знать.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
WindR
Сообщения: 35
Зарегистрирован: Сб дек 21, 2019 13:38

Сообщение WindR »

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

Сообщение Flasher »

WindR
В общем, добавил проверку. На TCKB ещё раньше, потом отойти пришлось.
Вместо условия теперь второй параметр для длинных путей.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить