Что нового

SciTE 3.5.5.101 для AutoIt

Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: SciTE 3.2.5.99 для AutoIt

Ну, самое существенное для некоторых, это то, что я полностью прекратил поддержку бестолкового AutoIt3Wrapper. Маразм с этой утилитой дошел до того, что она теперь даже не компилируется, а запускается из SciTE посредством AutoIt3.exe. Нужно признать, что в том виде, в котором сейчас поставляется AutoIt3Wrapper, он себя полностью изжил, умер. Поэтому все дружно переходим на нативные директивы "pragma" и пользуемся Compiler Wrapper.
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Re: SciTE 3.2.5.99 для AutoIt

Хотелось бы, что бы в будущих версиях Compiler Wrapper можно было легко добавлять свои иконки так же, как сейчас добавляются файлы res.
Мне пока не очень понятно, как мои иконки собрать в один res.


Добавлено:
Сообщение автоматически объединено:

Еще хочется, что бы индивидуальные настройки SciTe не сбрасывались после обновления программы. Может, конечно, и сейчас такое возможно, но я не знаю как.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: SciTE 3.2.5.99 для AutoIt

inververs сказал(а):
Хотелось бы, что бы в будущих версиях Compiler Wrapper можно было легко добавлять свои иконки так же, как сейчас добавляются файлы res.
Мне пока не очень понятно, как мои иконки собрать в один res.
Немного поясню. Compiler Wrapper поддерживает файлы .res и .rcs. Первый (.res) представляет собой готовый файл ресурсов в бинарном виде. Просмотреть или отредактировать его можно, например, с помощью Restorator или другого редактора ресурсов. Второй (.rcs) есть ни что иное, как текстовый файл с набором команд Resource Hacker, и имеет следующий вид:

Код:
[COMMANDS]
-add 1.ico, ICONGROUP, 101,
-add 2.ico, ICONGROUP, 102,
-add 3.ico, ICONGROUP, 103,
-add 4.ico, ICONGROUP, 104,
-add 5.ico, ICONGROUP, 105,

В данном примере в ресурсы добавляются 5 иконок (1.ico, 2.ico и т.д.) под именами 101, 102 и т.д. На самом деле достаточно создать один раз файл .rcs, и в дальнейшем только изменять его под каждый скрипт. Да, в папке Tools\Compiler Wrapper\Examples лежат примеры .res и .rcs файлов.

inververs сказал(а):
Еще хочется, что бы индивидуальные настройки SciTe не сбрасывались после обновления программы. Может, конечно, и сейчас такое возможно, но я не знаю как.
Вот здесь недопонял. Если вы о настройках, которые меняются в самом редакторе, то все они находятся в файле SciTE.settings в папке пользователя. Текущая цветовая схема находится там же в файле SciTEUser.properties. Эти файлы никак не затрагиваются обновлениями. Если вы говорите о глобальных настройках (SciTEGlobal.properties), то тут я советую вам сохранить в отдельном файле, например MySettings.properties, те настройки, которые вы изменили, а в конец (!) SciTEGlobal.properties добавить следующее:

Код:
import MySettings.properties
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Re: SciTE 3.2.5.99 для AutoIt

Я имею ввиду файл au3.properties и SciTEGlobal.properties
В первом у меня прописан путь к AutoIt3Dir, во втором scite.userhome и highlighting.identical.text.max
Мне бы хотелось где то один раз поменять эти значения и уже в будущем обновляться, просто извлекая всё из архива в папку SciTe и не восстанавливать заново эти настройки. Вот про что я.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: SciTE 3.2.5.99 для AutoIt

Вот, очередной бред очередного старикашки. Теперь мы подстраиваемся под левые антивирусы. Кстати, нежелание компилировать AutoIt3Wrapper и оставить его в виде скрипта тоже вызвано этой причиной, поскольку как его не компилируй, а какой-нибудь типа антивирус все равно ругнется. Еще и на мой сайт наехал, его видите ли Google Chrome блокирует. Такие дела.

:smile:
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Re: SciTE 3.2.5.99 для AutoIt

Yashied [?]

1. Я частенько посещаю Ваш сайт через Chrome и никаких предупреждений не получаю!
2. Ворчание бывает всегда в тех случаях, когда разработчики не хотят что либо менять или делать, но видят, что сторонние программисты стараются выровнять ситуацию, и у них это получается.
3. Антивирусы, ни в коем случае не должны заменять мозги.

Кстати, я с Avast`ом v4 проблем не знаю, меня только одно страшит, что бы "умные программисты" не прекратили обновлять базы для четвёрки.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: SciTE 3.2.5.99 для AutoIt

Тут дело в том, что они озаботились чистотой своего сайта, и начали "портить" все, на что ругается VirusTotal. Отсюда и 3.3.14.1, и бредовая сборка SciTE4AutoIt3, и ужасный дизайн этой страницы, и многочисленный правки на форуме не в лучшую сторону. И это при всем при том, что за последние несколько лет (как ушел Valik) разработчики (а по сути он один - Jon) так ничего толком и не сделали.

P.S

Google Chrome разблокировал мой сайт (вчера и сегодня 2 часа назад еще блокировал).
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Ха-ха. Вот теперь все встало на свои места. У него просто разрывает одно место, поскольку кто-то делает его работу лучше и подходит к ней более требовательно и без маразма, а не просто компилирует ядро с выходом новой версии SciTE. Частично он это признал. Кредиты? Какие еще кредиты? Ну да, от его деятельности осталось лишь две утилиты - Au3Stripper и Tidy (если все-таки то самое место у него не выдержит и лопнет, то я либо напишу свои аналоги, либо просто удалю их из сборки ко всем чертям). Все остальное принадлежит Ru-Board. Но поскольку нет никакого лицензионного соглашения на эти утилиты (я не нашел), то и заводить разговор с его стороны об этом не стоит, нужно скромнее быть. А вот коллектив Ru-Board я обязательно упомяну, это мое упущение.

Надеюсь, что теперь он от меня отстанет и займется делом.

:Censored:
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Yashied [?]
Второй (.rcs) есть ни что иное, как текстовый файл с набором команд Resource Hacker, и имеет следующий вид:
или вместо 101, 102 можно присваивать имена:
Код:
[COMMANDS]
-add 1.ico, ICONGROUP, RED,
-add 2.ico, ICONGROUP, GREEN,
-add 3.ico, ICONGROUP, BLUE,
И затем в коде устанавливать иконку по имени GUICtrlSetImage($Icon1, @ScriptFullPath, 'RED')
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
inververs сказал(а):
И затем в коде устанавливать иконку по имени GUICtrlSetImage($Icon1, @ScriptFullPath, 'RED')
Да, название ресурса может быть как число, так и имя.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Yashied [?]
Ха-ха. Вот теперь все встало на свои места. У него просто разрывает одно место, поскольку кто-то делает его работу лучше и подходит к ней более требовательно и без маразма, а не просто компилирует ядро с выходом новой версии SciTE.

Garrett [?]
2. Ворчание бывает всегда в тех случаях, когда разработчики не хотят что либо менять или делать, но видят, что сторонние программисты стараются выровнять ситуацию, и у них это получается.

Вот и я о том же... ;D
Прочитав тему, я сразу это просёк. ;)
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Хочу кое-что пояснить по поводу ресурсов. Итак, по умолчанию после компиляции ресурсы в .exe файле выглядят так:

h_1438938918_8567272_a978f83e80.png

Здесь "Menu" и иконки 164 и 169 относятся к меню в трее, которое AutoIt создает по умолчанию. Очевидно, что в готовых скриптах это меню мало кому нужно, поэтому, если добавить в скрипт директиву

Код:
#NoTrayIcon


то эти ресурсы создаваться не будут.

h_1438938926_1589751_71a02c9f87.png

Иконка под номером 169 всегда добавляется в ресурсы. Она используется в ListView при перетаскивании элементов. Поэтому, если данный функционал не реализован в скрипте, а как правило так оно и есть, то эту иконку можно смело удалить из ресурсов.

h_1438940012_4794951_3054690f9f.png

Для удаления иконок в файле .rcs используется следующая команда:

Код:
[COMMANDS]
-delete ICONGROUP, 169,

h_1438940509_2039465_965ad3c969.png

Далее. Ресурс "String" содержит сообщения, которые AutoIt выдает при критических ошибках, возникающих во время выполнения скрипта. Но, т.к. в любом случае после этого следует аварийное завершение программы, то вообщем-то нам все равно, с сообщением вылетит скрипт или без него. В отлаженной программе подобных ситуаций возникать не должно, следовательно и "String" нам по большому счету не нужен. Для удаления "String" добавляем в файл .rcs такую команду:

Код:
[COMMANDS]
-delete ICONGROUP, 169,
-delete STRINGTABLE,,

h_1438938933_4492179_a78d78dd19.png

Вот теперь в файле остались только используемые ресурсы. Все аккуратно и красиво. Таким образом в большинстве случаев файл .rcs будет содержать как минимум 2 команды, а далее вы уже добавляете свои ресурсы (если нужно).

P.S

На всякий случай вот команды для удаления "Version", "Manifest" и всех иконок сразу:

Код:
-delete VERSIONINFO,,
-delete 24,,
-delete ICON,,

P.S.S

Вот пример .rcs, который я использовал при компиляции Compiler Wrapper:

Код:
[COMMANDS]
-delete ICONGROUP, 169,
-add 201.ico, ICONGROUP, 201,
-add 202.ico, ICONGROUP, 202,
-add ABOUT.png, PNG, ABOUT,
-add EXEC.png, PNG, EXEC,
-add PROGRESS1.png, PNG, PROGRESS1,
-add PROGRESS2.png, PNG, PROGRESS2,
-add PROGRESS3.png, PNG, PROGRESS3,
-add DROID_SANS_MONO_SLASHED.ttf, TRUETYPE, DROID_SANS_MONO_SLASHED,
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Обновил SciTE:

1.3.0 (05 Августа, 2015)
  • Обновлена версия ядра SciTE (3.5.5.101).
  • Обновлены утилиты Au3Stripper (15.729.1555.0) и Tidy (15.729.1555.0).
  • Добавлен параметр "win10" в pragma директиве "Compatibility" в Compiler Wrapper (1.0.0.6).
  • Изменены некоторые .lua файлы для совместимости с новым ядром SciTE.
  • Удалена утилита AutoIt3Wrapper из этой и последующих сборок SciTE. Используйте Compiler Wrapper.
  • Удалены иконки для внешних утилит (Koda и т.д.) из панели инструментов (Toolbar).
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Обновил SciTE:

1.3.1 (09 Августа, 2015)
  • Обновлены библиотеки gui.dll, lpeg.dll и shell.dll.
  • Обновлена библиотека AutoItX3.dll (3.3.14.1).
  • Обновлены утилиты SciTE Theme Manager (1.0.0.2) и SciTE Updater (1.0.0.1).
  • Добавлены некоторые команды из контекстного меню редактора в основное меню (Tools\Text).
  • Добавлен плагин MoveLines (Tools\Text).
  • Добавлены горячие клавиши для команд Calculate, Highlight и Execute.
  • Переименовано меню Tools\Advanced в Tools\Preferences.
  • Изменена иконка SciTE.
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Yashied а вы пожелания для развития функционала SciTe принимаете?
Если да, то вот одно: подсказки для пользовательских функций.
Что это такое? Это то, что показывается после того как набрать стандартную функцию, например StringSplit и закрыть открыть скобку, то редактор подскажет, что у функции 3 параметра. Так вот, хотелось бы, что бы при наборе stage_registration_tab_1( мне показало параметры этой функции, например вот так:
stage_registration_tab_1(ByRef $status, ByRef $info, ByRef $admin_info)

Очень часто надо лезть и искать функцию, что бы вспомнить какие параметры и в каком порядке идут. Спасибо за внимание :smile:
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
inververs сказал(а):
набрать стандартную функцию, например StringSplit и закрыть скобку
Открыть скобку (при закрытии скобки редактор ничего не покажет).

inververs сказал(а):
Так вот, хотелось бы, что бы при наборе stage_registration_tab_1( мне показало параметры этой функции, например вот так:
stage_registration_tab_1(ByRef $status, ByRef $info, ByRef $admin_info)
Эта информация хранится в файле api\au3.user.api. Вы сами можете записать туда что угодно. Как правило, при написании более-менее серьезных библиотек, я прилагаю два файла: au3.userudfs.properties для подсветки функций в SciTE и au3.user.api для вызова всплывающих подсказок. Если вы хотите утилиту для управления этими файлами, то пока я не планирую этим заниматься, т.к. во-первых, гораздо проще самому написать черновой вариант без GUI в несколько десятков строк, а во-вторых, пользоваться такой утилитой приходится довольно редко (в большинстве случаев 1 раз при установке SciTE и дополнительных библиотек).
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Я не про библиотеку и не утилиту, вы не так поняли. Я про живой код, я написал функцию и хочу в подсказках видеть ее параметры. Вот я про что.
 
A

Alofa

Гость
inververs сказал(а):
... вы не так поняли. Я про живой код, я написал функцию и хочу в подсказках видеть ее параметры. Вот я про что.
inververs мне кажется что Yashied вас понял именно так как надо.

Yashied сказал(а):
...Эта информация хранится в файле api\au3.user.api. Вы сами можете записать туда что угодно...
Запишите в изначально пустой "au3.user.api" параметры вашей функции:
stage_registration_tab_1(ByRef $status, ByRef $info, ByRef $admin_info) This is my good function,
сохранитесь и наслаждайтесь:
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Alofa нет. Я знаю про au3.user.api, зачем мне там описывать функции которые только в этом скрипте будут? Я хочу, что бы подсказки показывали по функциям, которые уже есть в скрипте.
 
Верх