Autorun

Обсуждение только плагинов и утилит для Total Commander.

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

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

Сообщение Flasher »

Loopback писал(а):Кстати, в ini* еще надо бы поддержку редиректов секций добавить.
Было бы недурно.
Loopback писал(а):значит такой вариант достаточен.
В описаниях для строчных? Вероятно.

[cut]
Loopback писал(а):а когда с большим временным разрывом - совсем другое.
Я не ко времени адресую, а к логике. Т.е. ты же должен был понимать для чего это нужно, когда делал. Не с мыслью же "а, пусть будет...".[/cut]
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Выложена новая версия.

2.0.7
+ добавлена поддержка ключа RedirectSection в команды Ini*
+ autorun.cfg теперь может быть в любой юникодной кодировке
+ LngRead теперь должен читать файлы в любых кодировках
+ ModifyDialogs: в тексте команды AddCondition разворачиваются переменные
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Loopback
Респект! Вечером проверю.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Переменные в AddCondition проверил. Всё пучком. 8) Теперь могу пройтись по всему списку. Могу позже скинуть уже переделанные под универсальные примеры ModifyDialogs.
Loopback писал(а):Если нет - надо добавить.
Не вижу.
Loopback писал(а):в любых кодировках
Так уж в любых? :)
autorun.cfg мне пока хватает и в ANSI. Это, видимо, больше для некоторых других языков актуально, где, например, нужно свои комменты писать.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Flasher писал(а):Не вижу.
Передумал :D Там только дефолтный текст, вот там реально это может понадобиться?
Flasher писал(а):Так уж в любых?
Ну да, не совсем, UTF32 не поддерживается :oops:
Flasher писал(а):autorun.cfg мне пока хватает и в ANSI. Это, видимо, больше для некоторых других языков актуально, где, например, нужно свои комменты писать.
Да собственно это побочная фича от изменения LngRead, функция чтения одна для всего, добавлось там - автоматом и здесь. Раньше для конфига из юникода поддерживался только UTF16.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Loopback писал(а):вот там реально это может понадобиться?
Не знаю. Не моделировал такие ситуации пока.
Loopback писал(а):Ну да, не совсем, UTF32 не поддерживается
Полагаю, там список одним UTF32 не ограничивается. ;)
Loopback писал(а):добавлось там - автоматом и здесь.
Ясно.

В общем, по сути-то кроме лёгкой правки хелпа осталась только GetCpuInfo. И всё. Можно будет выдвигать плагин на пьедестал абсолютного почёта :), если, конечно, тебе в голову не ударит вернуться к созданию полноценного скриптового движка. :wink:
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Flasher писал(а):Полагаю, там список одним UTF32 не ограничивается.
Надо было уточнить, что "в любой распространенной юникодной кодировке" :wink: Конечно, не зная, в какой кодировке файл, из ANSI я могу перекодировать только используя системную кодировку.
Flasher писал(а):осталась только GetCpuInfo
Да, сейчас всё зарелизю и займусь.
Flasher писал(а):если, конечно, тебе в голову не ударит вернуться к созданию полноценного скриптового движка
Тут всё не так просто. Не факт, что синтаксис в таком движке будет удобнее именно для этой задачи. Например, сейчас есть разворачивание переменных окружения прямо в тексте, использование текстовых параметров без кавычек, переключатели и т.д. От этого придется отказаться. В общем, эта идея еще пока витает :)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Loopback писал(а):Надо было уточнить, что "в любой распространенной юникодной кодировке"
Это другое дело.
Loopback писал(а):Да, сейчас всё зарелизю и займусь.
Отлично! Только надо ещё кое-что в справке подправить (примеры, в особенности).
Loopback писал(а):От этого придется отказаться.
Это, получается, конфиг на помойку? Я думал, что может быть некая надстройка над имеющимся типа скриптинга в рамках TCMediaInfo.xml.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Flasher писал(а): Я думал, что может быть некая надстройка над имеющимся типа скриптинга в рамках TCMediaInfo.xml.
Тут несколько разные сценарии. Не уверен, что от "надстройки" будет какой-то заметный выигрыш, с тем же успехом можно запустить и внешний скрипт.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Loopback
Если нужно возвращать значения, то внешний скрипт (ещё и с учётом консольного вывода) будет куда медленнее.

Готовя правку примера для chm, столкнулся с такой делемой. Надо из lng-ключа вытащить 5-й элемент в массиве, разделённый по \n:
5102="Вид окна\nОсновные операции\nСодержимое панелей\nЯзык\nПравка/Просмотр\nШрифты\nЦвета\nРазное\nАрхиваторы\nАрхиватор ZIP\nТабуляторы"
Внешний скрипт со Split(Str)(4) для хелпа не годится.
Можно было бы соорудить многоэтажки из StrPos, Set и StrMid, но это тоже нормальным вариантом трудно назвать:

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

IniRead LNG %COMMANDER_INI% Configuration LanguageIni
LngRead Edit 5102 '%COMMANDER_PATH%\Language\%LNG%'
StrPos Pos "%Edit%" \n
Set /C Pos %Pos%+2
StrMid Edit "%Edit%" %Pos%
StrPos Pos "%Edit%" \n
Set /C Pos %Pos%+2
StrMid Edit "%Edit%" %Pos%
StrPos Pos "%Edit%" \n
Set /C Pos %Pos%+2
StrMid Edit "%Edit%" %Pos%
StrPos Pos "%Edit%" \n
Set /C Pos %Pos%+2
StrMid Edit "%Edit%" %Pos%
StrPos Pos2 "%Edit%" \n
Set /C Pos %Pos2%-%Pos%
StrMid Edit "%Edit%" %Pos%+2 %Pos%
MsgBox %Edit%
Было бы логично для строчных переменных добавить переключатель /С, чтобы проводить числовые операции с переменными.

Может, сделаешь новую команду (Split или StrRegExpReplace)?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Flasher писал(а):Может, сделаешь новую команду (Split или StrRegExpReplace)?
С регэкспом пока повременим. Split я очень люблю, но в чистом виде его тут не сделать, т.к. нет поддержки массивов. Но как раз в тестовой версии MediaInfo из тех же соображений добавлена функция StrPart - разделяет строку по разделителю и возвращает часть с заданным индексом. Как раз то, что надо. Можно перенести ее сюда.

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

Сообщение Flasher »

Loopback
Split здесь я себе как раз представлял как StrPart. Переноси, конечно. Тогда ждать не буду, под неё пример подгоню.

/С ещё тут не помешал бы: IniRead, IniWrite, GetUptime, MsgBox, RegRead, RegWrite, SendCommand, Sleep, AddControl.

В TCTorrent коснулись ShellExec. Может, тут /SW_SHOWNOACTIVATE тоже стоит добавить? Или от /SW_MINIMIZE следует ждать того же эффекта?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Loopback
Сообщения: 1646
Зарегистрирован: Пн сен 07, 2009 09:29

Сообщение Loopback »

Flasher писал(а):Может, тут /SW_SHOWNOACTIVATE тоже стоит добавить? Или от /SW_MINIMIZE следует ждать того же эффекта?
Может и стоит, если актуально. И нет, там эффект другой.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Loopback
Запрашеваемый в любом случае актуальнее имеющегося.

Модифицированный пример скинул в ЛС.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Loopback
Конечно, до финала версии 9.50 ещё далеко, но изменения в диалоге копирования (из-за новых кнопок) уже несомненны, непригодность указанных в справке примеров настроек для изменённого диалога — тоже (там всё прекрасно видно и не требует длинных пояснений), так что проработать в тестовом режиме подгонку Autorun_ModifyDialogs к новой версии диалога копирования было бы очень неплохо.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить