kIT Universal Presets

Обсуждение любых программ, не имеющих отношения к Total Commander.

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

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

Сообщение Flasher »

LonerD
Откуда этому взяться, если "метасекции" и "секции условий" не реализованы? Я же выше пишу о приоритетах.
Кстати, очень верная задумка - вычисляемые поля, то, что сейчас в TCFS2 можно делать. Было бы тоже кстати в приоритет поставить.

А вообще спецификация, конечно, не для "простых" смертных.
Совокупность задумок больше походит на отдельный менеджер автоматизации со своим языком, аля nnCron.
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение LonerD »

А вообще спецификация, конечно, не для "простых" смертных.
Угу. Потому побольше бы простых примеров готовых пресетов (из реализованный пунктов спецификации). А то сейчас в примерах - только изменение секций ini-файлов в разных вариациях (но фактически все примеры лишь на одну из спецификаций).
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

LonerD писал(а):ApceH
1. Спецификация впечатляет, что-то из неё уже реализовано.
2. Но очень мало примеров использования.
3. Есть базовая замена секций - и всё. А как реализовывать всё остальное
4. Может ли kitUP сделать следующие замены и как это будет выглядеть?...
#1 Спасибо.
#2 Мне хватает. Ровно столько, сколько нужно для понимания. Пишите ещё — включу.
#3 Не понял :?:
#4 Хм... Сейчас нет. Первое можно будет сделать уже скоро, когда реализую псевдонимы/переменные и секции отката. А остальное далеко впереди, это алгоритмические конструкции плюс вычисляемые поля... Впрочем, это не совсем задача пресета. Применять настройки, а не узнавать его задача (изначально).
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение LonerD »

Мне хватает. Не понял
Сейчас примеры пресетов (которые отдельным архивом выложены) включают в себя преимущественно однотипный функционал - замена секций в ini-файле (заменили цвета в Тотале, заменили размер иконок, заменили размер превью - по сути всё одно и то же).
Чтобы привлечь внимание пользователей к программе нужно сделать живые примеры реализованных возможностей.
Пишите ещё — включу.
Чтобы написать - нужно понять что реализовано, а что нет и в каком виде это реализовано. А чтобы понять - нужно перелопатить техническую спецификацию почти на сто страниц.
Например, в последней версии заявлена возможность работы с реестром. В документации - сухое указание "6) Реестр (в разработке)". И непонятно - что уже сделано, что нет, как реализованное применить на практике и в каких случаях оно будет полезно.
Кто ж как ни автор программы должен знать что он реализовал и для чего это реализовано.

Сделай хоть в специализации оглавление со ссылками, а в оглавлении отметь какие пункты и подпункты реализованы полностью, какие частично, а какие только в планах.
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

LonerD
Ну, что реализовано, написано в DoneList.txt. В целом можно считать, что реализована работа с INI, файлами/папками, процессами. Чуть менее, чем полностью, реализована работа с реестром.
Мне трудно приводить хорошие примеры, потому что имеет место полная универсальность.
На днях я закончу kIT PPP 12.6, где с помощью пресетов будет реализовано переключение языка всей сборки (рус/англ). Сразу выложу новые примеры.
Выделить в оглавлении PDF мысль была, посмотрю, сделаю. Указание "в разработке" говорит лишь о том, что сама спецификация не закончена, но кодирование началось.
PS. Ну и если бы мне нужно было внимание, я бы публиковал это не только на wincmd.ru. А от тутошних пользователей я ожидаю умение разбираться в работающей программе самостоятельно ;) При этом от вопросов и ответов никогда не ухожу.
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

Версия 0.3.5.251.

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

^ Исправлено: в некоторых типах секций продолжали использоваться закомментированные строки
^ Исправлено: утечка памяти в 5.2.2.1 (im без ключей)
^ Теперь ключ RussianSpeakingLCIDs (3.1.3.1) применяется и в дереве пресетов
Версия 0.3.6.269. SHA1: 78C03BAF7C3E4BA926C2941C2C272C82D6660E5A

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

+ 2.3 //это возможность в пакетном режиме запретить выполнение любых типов действий
+ 2.4 //полезно, например, когда пресет нужно запустить во время установки некой сборки ТС, не выполняя перезапуска ТС
+ 1.1.1.19 //глобальные настройки запрещённых действий
+ 1.1.1.20 //имеют приоритет ниже, чем у переданных через командную строку
+ Добавлена графическая настройка опций: 1.1.1.19, 1.1.1.20
Программа (93 КиБ). Примеры пресетов (242 КиБ).
Актуальная спецификация (~500 КиБ).
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

ApceH
1. Ошибка:
5.2.7) c<режим>
Комментирование ключей. В целефом INI-файле комментируются ключи,
указанные в пресете. Комментирование заключается в добавлении знака
«;» в начало строки.
2. Битая ссылка:
Актуальная спецификация (~500 КиБ).
3. Размер файла спецификации уменьшился вдвое?
4. Не могу выгрузить библиотеки DriveLib и IconLib. Пресет с содержимым:

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

[c|wincmd.ini|Configuration]
DriveLib
IconLib

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

[PostActions]
per|TOTALCMD64.EXE
не срабатывает. Пробовал присвоить Инверсии символ, а ключам значение - без результата.
5. Окно утилиты не сохраняет своё положение и размеры.
6. Частые ошибки, одна из них, возможно повторяющаяся при рестарте TC x64 (возврат к былому):

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

---------------------------
Error
---------------------------
An unhandled exception occurred at $00000000007EC169 :

EAccessViolation : Access violation

An unhandled exception occurred at $0000000000409D7F :

EAccessViolation : Access violation

  $0000000000409D7F

  $0000000000409F82

  $000000000099BEA4

  $00000000004522DD

  $0000000000410127

  $000000000041046D

  $00000000007F112B

  $000000000040EE2F

  $0000000000430599

  $000000000044649D

  $00000000004120A0

  $000000000041227B

  $000000000041243D

  $0000000000404B9F




---------------------------
ОК   
---------------------------
Позже я попробую другие варианты перезапуска TC и, если там не будет проблем, то через TCMC буду использовать один из них, а не встроенный способ kITUP, кажущийся мне проблемным.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

Исправленные ссылки:
Программа (93 КиБ). Примеры пресетов (242 КиБ).
Актуальная спецификация (~500 КиБ).
В спецификации, как просили, сделал пометки о реализованности прямо в заголовках. Размер уменьшился после экспериментов с голочками))

UPD
ask_rus
Комментирование в целом работает, но имеется одна ошибочка. У тебя не работало, потому что нет секции [c|...] в языке UP. Есть [ic|...]. Но баг всё же есть: в целевой секции пропускался первый ключ. Сейчас исправил, сделал заодно сохранение позиции, тестирую, выложу сегодня.
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

Версия 0.3.6.277. SHA1: 25BCDDA04F64D6FD3E9CFF76BE11456048984ED6

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

^ Исправлено: пропускался первый ключ в секции при выполнении 5.2.7 (ic)
+ 1.1.1.21 //позиция и размеры окна
+ Добавлен переключатель необходимости запоминания позиции и размеров окна, т.е. опции 1.1.1.21
^ Теперь сохраняются только изменившиеся настройки программы
Программа (98 КиБ). Примеры пресетов (242 КиБ).
Актуальная спецификация (~500 КиБ).

Последнее в списке исправление не такое уж безобидное. Без этого раньше, например, нельзя было пресетом изменить настройки самого kIT UP. Поэтому, например, в сборке kIT PPP при смене языка переводилось всё, кроме самого kIT UP, точнее он перезаписывал опцию языка при выходе.

ask-rus
Спасибо за репорт. С мёртвой точки сдвинулся хоть проект.
Вылеты никак не могу получить! Всё отлично перезапускается во всех вариантах... Мне кажется, это какой-то плагин тотала...
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

ApceH писал(а):У тебя не работало, потому что нет секции [c|...] в языке UP.
Запарился как всегда... Теперь всё отлично.
ApceH писал(а):Вылеты никак не могу получить!
Смешное то, что сейчас я тоже их не могу получить. Забудем, видно будет.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

ApceH
Перезапуск из окна отличается от перезапуска кнопкой с параметрами? Сравни, ведь все ошибки возникают как раз после взаимодействия с GUI.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

ask-rus
У меня все пресеты, требующие перезапуск TC, применяются и из меню TC, и из GUI kITUP-а. И из-под TC любой битности.
Да и по коду если посмотреть, абсолютно нет различий в способе обработки пресетов. Я вообще собираюсь отделить GUI, потому что он и так отделён считай.
А GUI kITUP-а точно из-под TC запускается? А то он же не увидит COMMANDER_PATH и т.п. тогда.
Лучше пришли мне конкретные пресеты, которые вызывают проблемы, и описание, где что у тебя лежит, чтоб я попробовал.
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

ApceH писал(а):Да и по коду если посмотреть, абсолютно нет различий в способе обработки пресетов.
Что-то не верится мне.
ApceH писал(а):Я вообще собираюсь отделить GUI
Если проблема не решится, я только ЗА.
ApceH писал(а):А GUI kITUP-а точно из-под TC запускается?
Да, точно.
ApceH писал(а):Лучше пришли мне конкретные пресеты, которые вызывают проблемы, и описание, где что у тебя лежит, чтоб я попробовал.
Сделаем, надо решать.

Изображение
D:\TotalCmd8\PLUGINS\Tools\kIT Universal Presets\Presets\em_InternalAssociateOnOff\Config.ini

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

[Configuration]
DefaultDirectory=%COMMANDER_PATH%
Name=TC - Внутренние ассоциации: вкл/выкл
PreviewsDirectory=Previews
LastPreset=em_InternalAssociateOnOff.up

[PostActions]
per|TOTALCMD64.EXE
D:\TotalCmd8\PLUGINS\Tools\kIT Universal Presets\Presets\em_InternalAssociateOnOff\em_InternalAssociateOnOff.up

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

[IN|wincmd.ini|Associations]
Добавлено спустя 6 минут:

В скрипте от Volniy по перезапуску TC я увидел -
'Ожидание завершения работы ТС
Есть ли это ожидание и какое у него значение?
Последний раз редактировалось ask-rus Пт фев 22, 2013 08:27, всего редактировалось 1 раз.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Сообщение ApceH »

ask-rus
Проблему обнаружил... в твоём конфиге категории. Убери пробел в конце строки "DefaultDirectory=%COMMANDER_PATH% " :lol: Получался неправильный путь, и выдавался несуществующий PID процесса, который прога пыталась убить и сама падала.
Конечно, сейчас добавлю пару строк для удаления пробелов в начале и конце пути. Или пробелы нужно удалать вообще при доступе к ini-файлам? А то сейчас значением ключа является всё от "=" до перевода строки...
Ну и проверку на несуществующий PID добавлю. Спасибо!
P.S. И поменяй местами цитаты в предыдущем посте, а то введём в заблуждение читающих.

А что за скрипт от Volniy?
Ожидание корректного завершения процесса настраивается параметрами CloseProcessWait и TerminateAfterWait.
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Аватара пользователя
ApceH
Сообщения: 316
Зарегистрирован: Пт апр 08, 2011 17:58
Откуда: Димитровград

Версия 0.3.7.293

Сообщение ApceH »

Версия 0.3.7.293. SHA1: 0355AE171C0AFD3449875DDE3C330F35CF8858F4

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

^ Комплексный рефакторинг секций работы с файлами (8.*)
 + 8.2.1-2 //поддержика маскок (*,?) для исходных файлов
 + 8.4.* //форсированное создание промежуточных каталогов
 ^ 8.1.* //строгая проверка синтаксиса секций
^ Добавлена прокрутка списка опций колесом мыши
^ Улучшено поведение окна при изменении его размеров и положения разделителя
^ Исправлено: вылет, если в пресете имелась секция с пустым заголовком
^ Исправлено: попытка завершить процесс, даже если он не найден, что приводило к вылету программы
^ Пробельные символы в конце ключей up-файла теперь удаляются
^ Закомментированные строки секций теперь не выводятся в лог
^ Исправлено: 8.4.8 и 8.4.9 (fa и fA) работали не точно в соответствии со спецификацией
^ Исправлено: 2.7 (запуск со свободным пресетом в параметрах) теперь работает, но без проверки ключа FreePreset
^ Исправлено: у свободных пресетов DefaultDirectory был равен "/", теперь – папка программы
^ Исправлено: не очищалась память структуры для учёта изменившихся настроек, что приводило к непредсказуемым сбоям опции 1.1.1.21
Программа (~100 КиБ). Примеры пресетов (~250 КиБ).
Актуальная спецификация (~500 КиБ).
kIT Programs PowerPack, kIT Universal Presets | Есть только одна истинная вера: чёрная магия...
Ответить