Page 1 of 3

[IfES] - Script Editor for Injection

Posted: 2005-05-06 07:36:08
by Destruction
IfES - это вэб-интерфейс для написания Injection скриптов.
Имеет множество плюсов по сравнению со стандартным модулем скриптов инжекта.

Главным преимуществом IfES'a является то, что его код никто не собирается скрывать защитами, наоборот, он очень хорошо откомментирован, благодаря чему, каджый может помочь мне исправлять различные мелкие недочеты.

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

Всем, кому интересно, можете посетить страничку:
http://web-master.hoha.ru/IfES/ [~20kb]

Замечу, что я не проверяю работоспособность данного скрипта в разных браузерах, поэтому настоятельно рекомендую: используйте Microsoft Internet Explorer 6.0, в будущем возможна (хотя наврятли) адаптация скрипта под другие браузеры.
*браузер (browser) - программа для просмотра вэб-страниц.

Собсно программа конечно еще пишется, однако уже умеем отделять функции и подсвечивать текст (коряво, но умеем).

Разработчики:
Destruction: Автор проекта, занимается разработкой интерфейса и основных скриптов программы.
Beyonder: Помогает находить ошибки в скриптах и исправлять их, перевод программы на другие языки.
История развития:
9, май, 2005: Методом проб и ошибок, закончено написание функции на работу с отдельными функциями, осталось пара недочетов - думаю как раз, как бы их порешать.
10, май, 2005: Добавлена выборка языков. Учтите, что при выборе языка страница перегружается, есть следущие языки: Русский, English, Lietuviu.
12, май, 2005: Заработали специальные символы для литовского языка.
14, май, 2005: Сделан первый шаг к подсветке кода.

Posted: 2005-05-06 07:55:20
by J17
Веб-редактор скриптов?..
А что это будет такое? Куда будут сохраняться скрипты? На веб-сервер?

Posted: 2005-05-06 11:07:02
by DIKIY
на хард, причём тут веб, просто будет работать на интерфейсе веб и всё.

Posted: 2005-05-07 01:38:39
by Destruction
Дайти плиз кто-нить ссылку на хелпу по работе с файлами на АктивХ!

А то ведь не в куках же хранить все это дело :twisted:

Posted: 2005-05-07 07:18:04
by Beyonder
Вот тут чисто работа с файлами (на народе и грузиться долго):
http://educationfor.narod.ru/JScript/28.html
Или мое зеркало которое должно выйти из дауна через час после написания этого поста:
http://beyonder.nm.ru/ax-files.html

Posted: 2005-05-07 17:56:25
by Destruction
Слушайте, а как бы мне его назвать? 8)
Просто с одной стороны не к спеху, а с другой - скоро выдет версия 1.0 альфа версия. Думал назвать "Destruction's Script Editor for Injection" - но, ИМХО, DSEI - ну не звучить, хоть убей :evil:

Posted: 2005-05-07 19:42:50
by I'm
Destruction's Script Editor for Injection
Я думаю ты найдеш куда вписать первое слов (в названии неахти) моё мнение :roll:
"Script Editor for Injection" -> "SEFI" -> reverse -> "Ifes"
И получилось круто :lol:

Posted: 2005-05-09 21:31:05
by Destruction
http://web-master.hoha.ru/IfES.html

Пока в стадии написания, просто не хочу, чтобы думали, что проект не разрабатывается - можете хоть каджый день проверять дату файла. Каждый день обновляем!

Posted: 2005-05-09 21:39:28
by Destruction
Собственно буду рад любым предложениям по улучшению программы, учту все пожелания которые только могут быть 8)

Кроме того, я совсем не собираюсь отказываться от помощи, моя ICQ (275986216) всегда (вру, редко, но всеже) готова принимать сообщения.

Posted: 2005-05-10 00:48:10
by Destruction
Урра, после долгих мучений, программа-таки согласилась аккуратно отделять друг от друга функции. 8)

Не надо думать, что я это заброшу как ходилку, чтобы писать ходилку нормальную - не хватает средств, та и ваще, этим АГРС вродь занимается.

Собсно ищем баги в новой опции и постим, буду рад вас выслушать!
Так, известен баг, при вводе:

Code: Select all

sub()

или

Code: Select all

sub ()

Ничего хорошего не получается, про него можете не писать - я знаю.

Posted: 2005-05-10 02:16:06
by Destruction
Воо, терь есть возможность выбрать язык, на выбор представленны на данный момент следущие языки: Русский.

Posted: 2005-05-10 13:13:33
by I'm
Destruction wrote:Воо, терь есть возможность выбрать язык, на выбор представленны на данный момент следущие языки: Русский.

Если я сязвлю какой большой выбор :shock: ?

Posted: 2005-05-10 14:49:44
by Beyonder
Может у него просто готов языковый движок а переводить лень =).

Posted: 2005-05-10 15:14:05
by Destruction
Beyonder wrote:Может у него просто готов языковый движок а переводить лень =).

Ща бут и инглишь, шо вы паритесь? :)

Просто я спал.

Posted: 2005-05-10 17:53:18
by Destruction
English language added как говорится.. Собсно как всегда криво - тот, кто знает инглишь куда-то свалил :evil:

Posted: 2005-05-10 20:06:51
by Destruction
English fixed, Lietuviu added ;)

Собсно я хотел сказать что инглишь терь боль мень грамотный и добавлен литовский язык... Ща делаю подсветку.

Posted: 2005-05-11 08:26:19
by Edred
А еще мельче выбор языка сделать не получилось? Чтобы его совсем не видно стало? :shock: И так не читается, дык пусть тогда и не видно будет.

Но этому проекту до возможностей EditPlus-а - пахать и пахать. Годами. Лучше бы новый скриптовый модуль сделал... Нормальный интерпретатор вместо глючного компилятора...

Posted: 2005-05-11 09:00:49
by Beyonder
Так текущий он и есть интерпретатор а не компилятор. Он же скрипты не компилирует перед запуском. Или я чего-то не догоняю...

Posted: 2005-05-11 10:51:26
by AGRS
А скрипты автоматом сохраняются в БД на сервере? :lol:

Posted: 2005-05-11 11:49:49
by Edred
Beyonder wrote:Так текущий он и есть интерпретатор а не компилятор. Он же скрипты не компилирует перед запуском. Или я чего-то не догоняю...


Фактически компилирует. Потому-то при ошибке исполнения невозможно узнать в какой строке это произошло. Есть же дока по скриптовому модулю:

Code: Select all

Идея парсера

Собственно заключается в том, чтобы использовать Bison по максимуму. Единственное ограничение – Бизон рассчитан на написание компиляторов. То есть таких программ, в которых переданный скрипт просматривается целиком и притом всего один раз. У меня же интерпретатор. А в интерпретаторе, как известно, части скрипта могут вообще не выполняться (например, тело IF) или выполняться несколько раз (в случае цикла). Как я из этого выкручиваюсь?
Тупо. Бизон генерирует разборщик грамматики yyparse, который зависит от внешней функции yylex, сообщающей ему, какое именно слово требуется разобрать в дальнейшем. Так я в функции yylex вру что, например, в случае ложного условия IF тело до ENDIF пустое, а в случае цикла FOR a=1 to 10, тело цикла повторяется 10 раз.
Правда в этом случае пришлось функцию yylex сделать слишком «интеллектуальной»: она сама определяет, когда надо убрать строки, а когда наоборот. К счастью «добавление» лишних строк осуществляется простой установкой внутреннего указателя ScriptPos в соответствующую позицию (кстати, таким же образом реализован GoTo). А «удаление» строк сделано функциями SkipToEndIf, SkipToCR, SkipToElseOrEndif, SkipToWend и т.д. Их назначение ясно из названия.