antabu По душу hh - он и встроенные в chm javascript не сильно жалует. Я это заметил на древней
htm2chm 3.0.9.3 ещё в момент её появления лет цать назад - с одной стороны она удобна - можно быстро скрутить chm-ку, а с другой сначала надо вычищать все скрипты или сыпятся их ошибки.
По поводу плагина - после версии 2.6 он был удалён из исходников, так что собрать новую его версию не возможно.
По поводу UPX - да, можно, но, а) иные мухобойки, например AVIRA, AVAST на него стойку делают - "
Если файл сжат UPX, это без проверки вирус!", б) UPX приводит к увеличению используемого программой объёма ОЗУ минимум на 6 - 8 Мб на каждый исполняемый модуль, для суматры это вдвое, хотя не помню кто когда-то утверждал что UPX добавляет к требованиям модуля по объёму ОЗУ порядка 0,5 Мб, а если брать те же mpress (на него мухобойки не ругаются), ASPack, PECompact то добавочный объём памяти требуемый для запуска программы может возрасти до нескольких десятков МБ на модуль. Потому тут и смысла нет, а сократить размер программы можно, только иначе - оптимизация по размеру и скорости кода (-o3 в GCC, /oS в MS VC++) и её сборкой без включения отладочной информации (/d NDEBUG в MS VC++). Например для Far 3.0 применение оптимизации и отключение создания отладочной информации позволило уменьшить размеры исполняемых модулей на 0,9 - 1,0 Мб (Far.exe x64, v3.0 b4535 STABLE - 5221 КБ, собранный с оптимизацией и /d NDEBUG - 4399 Кб) при использовании одного и того же компилятора MS VC++ 2010.
Правда тут есть одно НО! - оптимизация имеет смысл только или при:
а) применении её для STABLE версии программы (для UNSTABLE или DEV редакции выкидывать отладочную информацию и включать оптимизацию нельзя - это может как минимум затруднить поиск ошибок);
б) ключи компилятора включающие оптимизацию используются всеми участниками разработки или см. п. а).
В иных условиях смысла для её применения я не вижу, и единственный резон для этого использование программы с носителей малого объёма.