Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Autorun
Goto page Previous  1, 2, 3 ... 155, 156, 157, 158, 159  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
AkulaBig



Joined: 03 Dec 2008
Posts: 88

Post (Separately) Posted: Tue Nov 26, 2024 13:20    Post subject: Reply with quote

Orion9 wrote:

Только найти немного времени и ознакомится с его функционалом

Вот времени и нет. Тем более мне надо очень много времени, чтобы с чем-то разобраться.
Было-бы две головы. Но говорят, что одна голова - это хорошо, а две уже уродство Smile
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Sat Nov 30, 2024 20:51    Post subject: Reply with quote

AkulaBig
Если бы меня попросили придумать лозунг Autorun, я не колебался бы ни секунды:
 Hidden text

Идти нужно в ногу со временем. Возможно, раньше это и был простой "Автозапуск", о чем и говорит само имя плагина, но это было давно. Сейчас Autorun - это фактически полноценный, мощный скриптовый язык с интеграцией и ориентацией на ТС. Писать на нем скрипты - одно удовольствие. Ограничений практически никаких - лишь собственный полет фантазии. Я изменил немного скрипт и дополнил его, посмотрите какая красота получается:

 Hidden text

Теперь подсказку можно залочить по CapsLock или Shift+CapsLock, чтобы не держать постоянно Ctrl или Shift. Комбинация Ctrl+Click по активной панели меняет параметры MediaInfo. Файл hint.txt задает формат вывода для MI и должен быть в том же каталоге:
 Hidden text

Ну еще к exiftool путь нужно указать.
 Hidden text
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Sun Dec 01, 2024 01:10    Post subject: Reply with quote

AkulaBig
Кстати, в Autorun есть и своя подсказка, которую можно не только отображать, но и задавать ей другие стили. Вот пара примеров (вызов по F11 и Ctrl+F11):

 Hidden text

Переделал сейчас эти две функции под новые реалии: c RequestCopyDataInfo смотрится очень аккуратно и приятно для глаз, но вторую функцию еще надо дорабатывать или вовсе переделывать, пока это только демо.

В общем, Autorun - это больше, чем плагин. Почитав последнюю справку к нему, я просто прифигел сколько новых возможностей было добавлено. Считаю, что иметь навыки программирования и не пользоваться этими возможностями - это просто преступление против ТС Mr. Green
AkulaBig wrote:
Вот времени и нет. Тем более мне надо очень много времени, чтобы с чем-то разобраться.

Не займет долго, главное - начать. Оглянуться не успеете, как начнете клепать функции на Autorun как горячие пирожки для своей сборки Laughing
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Mon Dec 02, 2024 01:00    Post subject: Reply with quote

Loopback
Вызов функции ProcessCount("TOTALCMD") не находит 64-битные процессы TOTALCMD64, так и должно быть? Пока пришлось сложить значения:
Code:
tc = ProcessCount("TOTALCMD.EXE") + ProcessCount("TOTALCMD64.EXE")

В справке говорится про ключ /F (поиск по полному имени процесса), имеется ввиду полный путь?

P.S.

А тем временем, еще одна демо-зарисовка на тему цвета фона:

 Hidden text

Переключение цвета панелей в стиле Хищника Laughing

 Hidden text
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1433

Post (Separately) Posted: Mon Dec 02, 2024 13:19    Post subject: Reply with quote

Orion9 wrote:
так и должно быть?

Конечно. Определение идет по имени процесса, а имена у них разные.

Orion9 wrote:
имеется ввиду полный путь?

Да, полный путь к файлу процесса.
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1433

Post (Separately) Posted: Tue Dec 03, 2024 00:27    Post subject: Reply with quote

Версия Autorun 2.2.15 beta

 Список изменений


В этом релизе есть одно изменение, которое можно назвать критическим (хотя сомневаюсь, что это затронет большую аудиторию).

Если кто-то использует вычисляемые строки в параметрах вызываемой функции в функциях ControlSetMouseAction, SetHotkeyAction и SetMessageAction, то теперь они вычисляются единоразово при вызове этих функций, а не при вызове вызываемой функции. Это был давний баг, который считался в некотором роде "фичей", однако недавно обнаружилось, что он влечёт за собой критическую проблему с использованием переменных в параметрах. Поэтому он был исправлен, но в силу давности бага был добавлен режим совместимости, который можно включить переключателем /CM.

По аналогии были исправлены и RegisterCommand с RunThread, но без возможности возврата.

Также в справку была добавлена библиотека примеров. Очень предварительная, структура, категории - всё может измениться. Большая часть из них за авторством Flasher, если по ним возникнут вопросы - задавайте их ему напрямую через англоязычный форум.


Last edited by Loopback on Wed Dec 04, 2024 11:51; edited 3 times in total
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Tue Dec 03, 2024 01:16    Post subject: Reply with quote

Loopback
Эх, чуть-чуть не успел к релизу... Была парочка пожеланий, но теперь до следующего раза придется ждать.

Очень не помешала бы константа по типу AUTORUN_PATH, но только хранящая путь к подключенному файлу конфигурации, т.е. например, если подключен %COMMANDER_PATH%\Ini\Wdx\Hints.aucfg, то, скажем, AUTORUN_MODULE_PATH возвращала бы путь к каталогу этого модуля. Это облегчило бы жизнь в ряде ситуаций.

Еще хотелось бы посылать нажатия клавиш, т.е. иметь аналог SendKeys.

В Ini-файлах хотелось бы считывать и записывать сразу всю секцию или иметь отдельную функцию, которая включал бы ее или выключала, ставя/убирая перед ней минус.

Надо в будущем записывать все идеи. Иногда что-то замечаешь такое незначительное, но потом забываешь Smile

А за релиз спасибо! Завтра уже хочу пробовать новый оператор )
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1433

Post (Separately) Posted: Tue Dec 03, 2024 14:04    Post subject: Reply with quote

Orion9 wrote:
Очень не помешала бы константа по типу AUTORUN_PATH, но только хранящая путь к подключенному файлу конфигурации, т.е. например, если подключен %COMMANDER_PATH%\Ini\Wdx\Hints.aucfg, то, скажем, AUTORUN_MODULE_PATH возвращала бы путь к каталогу этого модуля. Это облегчило бы жизнь в ряде ситуаций.

И чтобы AUTORUN_MODULE_PATH возвращала свой путь внутри каждого модуля, так?

Так вот, это сделать невозможно, потому что "модули" не исполняются изолированно, технически после препроцессинга все подключаемые файлы объединяются в единый скрипт.

Orion9 wrote:
Еще хотелось бы посылать нажатия клавиш, т.е. иметь аналог SendKeys.

В планах, но с низким приоритетом. Для этого есть TCFS2 или Autoit/AHK.

Orion9 wrote:
В Ini-файлах хотелось бы считывать и записывать сразу всю секцию или иметь отдельную функцию, которая включал бы ее или выключала, ставя/убирая перед ней минус.

Над секцией целиком в принципе можно подумать. Ставить/убирать минус - хотя это по-сути переименование, технически это будет запись новой секции с удалением старой.

Orion9 wrote:
Надо в будущем записывать все идеи.

Конечно. Интересные идеи сразу записываются в todo. Правда, потом там могут лежать годами Smile
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Tue Dec 03, 2024 18:50    Post subject: Reply with quote

Loopback wrote:
Также в справку была добавлена библиотека примеров. Очень предварительная, структура, категории - всё может измениться. Большая часть из них за авторством Flasher, если по ним возникнут вопросы - задавайте их ему напрямую через англоязычный форум.

Я понял:
 Hidden text

Смотрю, он там опять все расписал как с куста, ну и сколько это будет продолжаться?
 Hidden text

Изменений действительно много, вечером напишу обо всем подробнее, но сейчас взялся за ProcessExecGetOutput. Еще ранее заметил, что на выходе стала появляться пустая строка в конце, но сразу разбираться не стал. Но сейчас удостоверился на фрагменте из скрипта:
Code:
ProcessExecGetOutput up "cscript.exe" "/nologo UpTime.vbs" %VbsPath%
OutputDebugString('"' & up & '"')

 UpTime.vbs

Кодовые страницы менял, не помогло. Воспроизводится у вас проблема?

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

GetState("paths") приводит к MsgBox с заголовком "dd"
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2667

Post (Separately) Posted: Tue Dec 03, 2024 19:42    Post subject: Reply with quote

Orion9 wrote:
GetState("paths") приводит к MsgBox с заголовком "dd"
Тоже обнаружил!

Список изменений wrote:
+ Tweaks: в ShowPopupMenu добавлен флаг расположения меню у выделенного объекта
А это о чём? В справке не нашёл...
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1433

Post (Separately) Posted: Tue Dec 03, 2024 20:20    Post subject: Reply with quote

Orion9 wrote:
Еще ранее заметил, что на выходе стала появляться пустая строка в конце, но сразу разбираться не стал.

Похоже, проблема была как раз в предыдущей версии и ProcessExecGetOutput обрезала лишнее. Потому что если запустить в консоли "cscript.exe /nologo UpTime.vbs", то видно, что после текста выводится перевод строки. ProcessExecGetOutput сам ничего не добавляет, всё что есть берётся из вывода.

На самом деле не вижу в этом проблемы, просто используйте StrTrim.

Orion9 wrote:
GetState("paths") приводит к MsgBox с заголовком "dd"

Во жеж... Обновил дистрибутив по той же ссылке.

sa wrote:
А это о чём? В справке не нашёл.

Флаг 16384 — нижняя граница курсора в активной панели.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2667

Post (Separately) Posted: Tue Dec 03, 2024 20:43    Post subject: Reply with quote

Loopback wrote:
нижняя граница курсора в активной панели
Понял! А ведь пробовал, но тестовое меню оказалось довольно длинным - не прочувствовал разницу. А объект, кстати, может быть и не выделенным, а просто выбранным.

Loopback wrote:
Во жеж... Обновил дистрибутив по той же ссылке.
Теперь нормально!
Back to top
View user's profile Send private message
jentoso



Joined: 20 Dec 2007
Posts: 368

Post (Separately) Posted: Tue Dec 03, 2024 21:45    Post subject: Reply with quote

Loopback wrote:
Да, /EV когда-то использовался для включения разворачивания переменных, потом был инвертирован на /EV-. Сейчас /EV в SetEnv просто ничего не делает.
В принципе всё просто: нет в документации - нет и по факту, можно смело убирать.

Может для "красоты" из autorun.example.cfg убрать в соответствии с документацией?
Quote:
# Adding current TC path to PATH environment variable
# Добавляет к переменной окружения PATH текущую папку TC
SetEnv /A /EV PATH ;%COMMANDER_PATH%

_________________
TC 11.03 combo, Windows 10 x64
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1433

Post (Separately) Posted: Tue Dec 03, 2024 22:52    Post subject: Reply with quote

Версия Autorun 2.2.15.1 beta

- исправлена некорректная работа ветки true тернарного оператора при присваивании

Очень надеялся обойтись без хотфиксов, но такое не для тихого обновления. Удивительно, как удалось такой косяк пропустить.

jentoso wrote:
Может для "красоты" из autorun.example.cfg убрать в соответствии с документацией?

Разумеется, просто этот файл уже сто лет никто не трогал, ближе к релизу он наверняка будет существенно переписан.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 521

Post (Separately) Posted: Wed Dec 04, 2024 01:06    Post subject: Reply with quote

Loopback wrote:
- исправлена некорректная работа ветки true тернарного оператора при присваивании

Да вроде сработала у меня примерка )
Code:
vars = (lParam = 2 ? GetState("envvars") : GetState("vars"))

Вызов в подсказке:
Code:
If IsPressed (0x10) Then Return GetState("libs")

Все нормально отображается, но если сделать
Code:
ClipPut(GetState("libs"))

То при вставке из буфера наблюдается такой вывод:
Code:
Library #1:

    Path: C:\Portable\T 11 03\Ini\Autorun\Plugins\Autorun_Tweaks.dll

    Plugin: true

    Version: 1.2.4.0

    Build date: 01.12.2024 13:46:03

    Description: Autorun sub-plugin with functions for tweaking TC

    Handle: 0x04EC0000

В чем причина лишних строк?

Quote:
+ Tweaks: в ShowPopupMenu добавлен флаг расположения меню у выделенного объекта
+ добавлены составные операторы присваивания: +=, -=, *=, /=, &=

Про ShowPopupMenu уже ответили, но в справке действительно нет, как нет и про новые операторы. Проверил пока += работает.
Quote:
- для Plugin исправлена "ошибка 3" при наличии только ANSI-версии ContentGetValue

Тоже проверил, ошибки больше нет.

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

Loopback wrote:
Так вот, это сделать невозможно, потому что "модули" не исполняются изолированно, технически после препроцессинга все подключаемые файлы объединяются в единый скрипт.

До меня потом дошло. Кстати, я уже думал ою этом летом, но забыл Laughing
Loopback wrote:
В планах, но с низким приоритетом. Для этого есть TCFS2 или Autoit/AHK.

Вы просто так круто взялись за окна Smile там уже столько функций разных - и найти можно, и активировать, и фокус установить - что возникает вопрос: почему бы не послать нажатия )
Loopback wrote:
Над секцией целиком в принципе можно подумать. Ставить/убирать минус - хотя это по-сути переименование, технически это будет запись новой секции с удалением старой.

Да, это фишка чисто ТС - в сборках бывает делают. Но лучше, наверное, просто секцию переименовывать, т.е. как вы и говорите - запись новой секции с удалением старой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 155, 156, 157, 158, 159  Next
Page 156 of 159

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group