Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > Monkey

Monkey Разработка игр на движке Monkey

Ответ
 
Опции темы
Старый 11.03.2014, 20:01   #1
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Jentos.Code

Всем привет.

Представляю вашему вниманию усовершенствованную версию редактора Ted v1.17, которую я назвал "Ted 2.0 IDE".
Нажмите на изображение для увеличения
Название: splash.png
Просмотров: 1254
Размер:	6.3 Кб
ID:	20233

Несколько картинок:

Нажмите на изображение для увеличения
Название: main_aucomp1.png
Просмотров: 1309
Размер:	49.0 Кб
ID:	20234

Нажмите на изображение для увеличения
Название: main_aucomp2.png
Просмотров: 1321
Размер:	66.2 Кб
ID:	20235


Описание особенностей:

** АНАЛИЗАТОР КОДА **

для корректной работы анализатора нужно заменить табы на 4 пробела

+ анализирует код при сохранении документа
+ список подстановки подходящих слов (открывается автоматически,
без нажатия на ctrl+space, если длина слова >= 2)
+ показ списка полей класса после точки (требует доработки)
+ автозакрывание (), "", '', [] (иногда не в тему закрывает, требует доработки)
+ в списке codetree добавлено отображение полей классов + иконки для элементов
+ сворачивание блоков (требует доработки).
внимание: может не работать, если вы используете закрывающее слово "end"
(в том числе "end if" с пробелом) для блоков, отличных от class, interface, function, method, select, try.
ещё: при переходе на строку N ("go to line..."), если она внутри свёрнутого блока, то блок разворачивается
+ автозавершение шаблонных сокращений нажатием на tab: fu+tab => function, me+tab => method и т.п.
(комбинации хранятся в файле templates.txt, можно добавлять свои шаблоны)
+ замена #$%? на :int :float :string :bool - при переходе на другую строку
+ замена /* и */ на #Rem и #End
+ контекстный хелп: F1 - показать хелп в статусной строке, ещё раз F1 - переход в хелп
+ удаление пробелов в конце строк


** ИНТЕРФЕЙС / КОДИНГ **

+ тёмное оформление (скопировано с android studio)
+ переход к объявлению переменной нажатием на Ctrl+ЛКМ (в том числе к объявлениям Monkey-классов)
+ при наведении курсора на переменную с зажатой кнопкой Ctrl показывается информация о переменной
+ между областью с кодом и дебагом добавлена всплывающая панель поиска/замены (вместо всплывающего окна)
+ открывать файлы можно перетаскиванием на центральную область
+ некоторые пункты в меню перенесены в другие разделы, как автор посчитал более логичным
+ выделение изменённых строки маркером слева (глючит при undo/redo, не критично)
+ добавлена панель с номерами строк, на которой можно ставить маркеры (bookmarks):
ЛКМ - выделить строку(строки), ПКМ - поставить маркер
также маркеры можно ставить горячими клавишами: Ctrl+M - установить/убрать маркер,
"Ctrl+," - предыдущий маркер, "Ctrl+." - следующий маркер
+ удаление 4 пробелов нажатием на Ctrl+Backspace (эквивалент удаления табуляции)
+ автозакрывание функций, условий, циклов и т.д. по нажатию Ctrl+Enter на строке,
содержащей ключевое слово (if,for,class и т.д.)
+ изменены цвета в подсветке кода
+ выбор директории с Monkey происходит сразу при старте, проверка корректности директории
осуществляется в момент её выбора, а не по нажатию на Okay.
+ подстановка языковых слов и функций (method, function, loadimage и т.д.) нажатием на ctrl+пробел
при перемещении по списку функций в статусной строке пишется краткий хелп
разным типам (константа, функция, метод, ...) присвоены разные иконки
при вставке функций с параметрами подставляются скобки и запятые, отделяющие параметры,
курсор встаёт на место первого параметра
+ разделить панель codetree на файлы с классами + список функций каждого класса
+ в навигаторе панель с кнопками: показывать поля, сортировать по алфавиту
+ панель со структурой документа перенесена влево по умолчанию
+ в статусной строке вместо "Line: row" отображается "row | col"
+ подсветка текущей строки с курсором
+ замена табов на пробелы, 1 таб = 4 пробела
+ "умный" Home: первое нажатие - переход к первому непустому символу в строке,
второе нажатие - переход в самое начало строки
+ "умная" вставка текста: при вставке_между_кавычками производится замена кавычек на ~q
+ при выборе элемента в навигаторе кода курсор ставится по центру
(было обычно снизу, приходилось прокручивать)
+ после "= new " предлагается класс, чей экземпляр создаём
(пока сделана подстановка если строка содержит тип данных, н-р "a:Obj = new ")
+ переход вперёд/назад к точкам последних редактирований кода
(можно перейти к объявлению переменной нажатием ctrl+ЛКМ,
затем вернуться на предыдущее место нажатием стрелки назад
или горячей клавиши
+ тёмное оформление справки сделано на скорую руку: "читаемо - и ладно"


** ПЛАНЫ **

- корректное определение области видимости переменных (scope)
- учитывать наследование
- анализ импортов/инклудов юзера
- доделать показ списка членов класса после точки:
а) чтобы при дальнейшем написании символов список не исчезал
б) вложенные объекты (obj.anim.rect.x)
- при вставке куска кода добавляются лишние отступы
(нужно убирать минимальный отступ всего блока от каждой строки)
- список подстановки вылазит внутри кавычек (в строковом выражении)
- подсветку кода встроить в analyzer, с учётом текущего scope
- учитывать переменные Self и Super, и выдавать список членов после точки
- анализ только изменённого участка кода
- обновлять codetree только для изменённого участка кода, если возможно
- выделять текущее слово_под_курсором везде в документе
- рефактор -- переименовать
- поиск использований переменной (usages)
- после new подставлять подходящий класс, если возможно
- фолдинг области, например для <!-- -->
- две темы оформления, добавить светлую


** ПРОБЛЕМЫ **

- версия не стабильная, но и не особо глючная.
- рекомендуется делать частый бэкап кода
- не проверялась при работе с импортом юзерских файлов, только на исходнике из 1 файла
- иногда приложение внезапно закрывается, ловит нулл поинтер или вроде того - чаще сохраняйтесь
- иногда при удалении выделенной области из нескольких строк сдвигается текст
в соседней области, лечится парой нажатий ctrl+z, - почаще делайте проверку синтаксиса (F6)
- иногда элементы интерфейса получают белую обводку, будто не применяется стиль. нужно перезапустить
- поддержка blitzmax не выпиливалась, но в настройках выбрать компилер нельзя, - только mankey
- не работает с monkeyPro64


** ИНСТРУМЕНТЫ **

Qt Creator 3.0.0 (Qt 5.2.0)
MinGW 4.8 32bit
Ted v1.17



Страничка проекта: http://fingerdev.com/ted20/
Скачать: ted20_v1.0a (21 Mb)

Как видно из описания, сделано не всё что задумано.
Выкладываю эту альфу в связи с тем, что у меня сейчас нет времени заниматься дальнейшей разработкой, чтоб добро не пропадало.

В дальнейшем, если удастся доделать анализатор кода, предложу эту версию в качестве дефолтной среды для Monkey.

UPD: для корректной работы анализатора нужно заменить табы на 4 пробела.

Последний раз редактировалось Жека, 12.03.2014 в 11:11. Причина: upd
(Offline)
 
Ответить с цитированием
Эти 11 пользователя(ей) сказали Спасибо Жека за это полезное сообщение:
Arton (12.12.2017), impersonalis (11.03.2014), LLI.T.A.L.K.E.R. (03.06.2014), moka (11.03.2014), Nerd (13.03.2014), pax (13.03.2014), Randomize (11.03.2014), Reizel (11.03.2014), SBJoker (11.03.2014), St_AnGer (12.03.2014), Черный крыс (12.03.2014)
Старый 11.03.2014, 20:28   #2
Reizel
Задрот
 
Аватар для Reizel
 
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений
(для 863 пользователей)
Ответ: Ted 2.0 IDE

Шрифты бы посветлей, нет?
офигенная работа
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Жека (12.03.2014)
Старый 11.03.2014, 20:58   #3
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,361
Написано 2,473 полезных сообщений
(для 6,857 пользователей)
Ответ: Ted 2.0 IDE

So sad...
Нажмите на изображение для увеличения
Название: mqQ2hiLZ.png
Просмотров: 1959
Размер:	18.2 Кб
ID:	20237
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Жека (12.03.2014)
Старый 12.03.2014, 07:54   #4
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

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

Сообщение от Randomize Посмотреть сообщение
Угу, забыл папочку.
Положить папку platforms из архива в папку с прогой. СКАЧАТЬ
В шапке перезалит архив.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (12.03.2014)
Старый 12.03.2014, 12:19   #5
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,361
Написано 2,473 полезных сообщений
(для 6,857 пользователей)
Ответ: Ted 2.0 IDE

Чудесно! Ещё чуть-чуть и будет конкурентоспособный продукт.

И сразу запрашиваю функцию автоформата кода (расставляет табуляции на вложенных блоках, пробелы между аргументами ф-ции и тд).
По аналогии с Blide/Jungle
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Жека (12.03.2014)
Старый 12.03.2014, 20:54   #6
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

Как только, так сразу.
(Offline)
 
Ответить с цитированием
Старый 21.03.2014, 22:27   #7
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

Новая версия 1.0.1

Список новшеств:

***Новое***
+ add: работает список подстановки юзерских слов, включая вложенные конструкции типа world.rect.width
+ add: учитываются переменные Self и Super, для super подставляются только члены из базового класса и интерфейсов
+ add: учитывается наследование, т.е. в списке подстановки видны члены этого класса + базового класса + интерфейсов.
но: если базовый класс тоже от кого-то наследовался, то уже не учитывается
+ add: выцепляются поля из классов манки, String, List, Image и т.п.: string.Split(), list.AddLast(), img.Width()
+ add: список подстановки для массивов: при обращении к самому массиву или к элементу массива (arr. | arr[i].) выдаётся список подстановки (если это массив объектов)
+ add: в codetree выделяется класс, и в навигаторе функция, внутри которой сейчас курсор
+ add: серый скроллбар в хелпе, теперь справка полностью в стиле иде
+ add: убран анализ кода при сохранении в момент закрытия приложения
+ add: при закрытии таба с кодом из codetree удаляется одноимённый пункт (исчезнет при очередном анализе кода)

***Изменения / улучшения***
+ change: в навигаторе список упорядочен таким образом: function, method, global, field
+ change: при вставке функций из списка подстановки всегда добавлялись скобки от функции.
теперь есть проверка - если после функции стоит буква или цифра, то добавляется только открывающаяся скобка.
+ change: для закрывающихся пар "", (), [] :
а) добавлена проверка: если после открывающегося символа стоит буква или цифра, то второй символ пары не добавляем
б) при удалении открывающего символа из пары, если за ним сразу стоит закрывающий, то удаляем оба
+ change: иконка приложения оформлена в тёмном кружочке
+ change: при перемещении по коду между последними редактируемыми строками (go back, go forward) ставить курсор в центр экрана
+ change: подсветка переменных фиолетовым только для членов класса.
но: подсветка сквозная, т.е. проверяется наличие переменной в любом классе, и подсветка в любом классе, даже если где-то такое же имя будет у локальной переменной (ибо покраска пока что не завязана на analyzer)

***Исправления***
+ fix: при вставке многострочного куска кода добавлялись лишние отступы (во многих иде так, в jungle тоже)
теперь блок кода в любом месте должен вставляться с корректными отступами независимо от того, откуда был скопирован и куда вставлен (для ctrl+v и shift+insert)
+ fix: при ctrl+c появляется список подстановки

Пара картинок:

Нажмите на изображение для увеличения
Название: dark_help_scroll.png
Просмотров: 1237
Размер:	44.1 Кб
ID:	20276
Нажмите на изображение для увеличения
Название: base_classes.png
Просмотров: 1283
Размер:	3.8 Кб
ID:	20277

Скачать:
ПОЛНАЯ ВЕРСИЯ (21.6 Mb, включает библиотеки Qt)

ИСПОЛНЯЕМЫЕ ФАЙЛЫ (225 Kb, без библиотек Qt; для тех, кто уже скачивал полную)
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Жека за это полезное сообщение:
impersonalis (22.03.2014), moka (22.03.2014), pax (22.03.2014), Randomize (24.03.2014)
Старый 22.03.2014, 04:38   #8
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Ted 2.0 IDE

Как IDE встретили на офф комьюнити манки?
(Offline)
 
Ответить с цитированием
Старый 22.03.2014, 08:02   #9
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

Сообщение от moka Посмотреть сообщение
Как IDE встретили на офф комьюнити манки?
я им ещё не показывал.
осталось чуток доделать, чтоб ваще конфеткой стал, и можно показывать.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (22.03.2014)
Старый 22.03.2014, 17:22   #10
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Ted 2.0 IDE

Сообщение от Жека Посмотреть сообщение
я им ещё не показывал.
осталось чуток доделать, чтоб ваще конфеткой стал, и можно показывать.
Имхо, лучше показывать на ранних стадиях, т.к. новые пользователи помогают отладить многие аспекты до того как ты ещё наделаешь ложных вещей.
Ship Early
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
HolyDel (07.04.2014), Mr_F_ (07.04.2014)
Старый 22.03.2014, 22:03   #11
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

moka, просто я решил показать за бугор, когда сделаю всё из списка задуманного. неохота, чтобы меня пичкали фразами "тут баг, там баг", про которые я и сам знаю. (при том что инглишем я владею средне)
насчёт ложных вещей - в первую очередь я делаю для себя, пока что нет ничего лишнего.
(Offline)
 
Ответить с цитированием
Старый 23.03.2014, 17:08   #12
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Ted 2.0 IDE

Сообщение от Жека Посмотреть сообщение
moka, просто я решил показать за бугор, когда сделаю всё из списка задуманного. неохота, чтобы меня пичкали фразами "тут баг, там баг", про которые я и сам знаю. (при том что инглишем я владею средне)
насчёт ложных вещей - в первую очередь я делаю для себя, пока что нет ничего лишнего.
"пичкали" - а при чём тут это?
Завёл список багов - и всё. Тебе народ помогает тестит - не стоит это воспринимать как что-то плохое.
Не бывает "идеальных" разрабов, все тупят и пишут баги, это норма нашей профессии.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Жека (23.03.2014)
Старый 07.04.2014, 08:45   #13
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Ted 2.0 IDE

Новая версия 1.0.2.

Редактор переименован в "Jentos IDE".
Переименуйте соответственно эту тему, пожалуйста.

Нажмите на изображение для увеличения
Название: splash.png
Просмотров: 1251
Размер:	7.4 Кб
ID:	20370

Что нового:

***Новое***
add: редактор переименован в "Jentos IDE"

add: автоформат кода, расстановка пробелов.
не форматируем:
а) если строка начинается с решётки #
б) внутри строк

add: в списке автоподстановки для экземпляров классов предлагаются данные из базового класса и интерфейсов.
в предыдущей версии было так только для Self.

add: фолдинг кода - сворачивание и разворачивание области:
1. классы и функции
2. блок #rem -- #end
3. блок '/** -- '**/ (по типу многострочного комментария в си)

add: замена в шаблонах (Map <K, V>, List<T> и т.п.)
замена делается для типов, перед которыми двоеточие: param:T => param:MyObj
если Node<T>, то не заменяем
например:
Local list:List<Car> = new List<Car>
далее в списке подстановки везде будем видеть наш тип 'Car'

add: пункт меню "Edit -- Autoformat all", позволяет скорректировать все строки документа.
использовать для кода, который ранее не редактировали в этом редакторе.
отменить изменения можно простым нажатием Ctrl+Z.

add: раскрывать в codetree файл в котором находимся
при выборе в навигаторе (codetree или source) элемента из другого файла (не текущего), открывается нужный файл на нужной строке

add: замена /* */ на #rem #end

add: для старых версий Monkey не нужно переименовывать trans_winnt.exe в transcc_winnt.exe, проверяется наличие обоих файлов


***Изменения / улучшения***
change: переделано оформление некоторых элементов;
добавлен градиент для верхней панели;
добавлена рамка для сплэш-картинки;
в окошке "About" ссылки кликабельные;

change: теперь анализатор корректно определяет завершение функций и методов для "end method" и т.п., раньше завершать методы нужно было только словом end

***Исправления***
fix: иногда появлялись белые границы у listview (в навигаторе или output'е)

fix: если переменная - это не экземпляр класса, и после неё поставить точку, то выдавались все возможные слова для подстановки. теперь ничего не выдаётся.


Скачать:
ПОЛНАЯ ВЕРСИЯ (21.7 Mb, включает библиотеки Qt)

ИСПОЛНЯЕМЫЕ ФАЙЛЫ (231 Kb, без библиотек Qt; для тех, кто уже скачивал полную)

Ещё я сделал оформление для сайта, посмотрите - http://fingerdev.com.
Там же можно посмотреть дополнительные скриншоты.
Те кто шарит в английском, просьба сообщить о замеченных ошибках.

Пошёл покорять зарубежное комьюнити.
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Жека за это полезное сообщение:
impersonalis (07.04.2014), LLI.T.A.L.K.E.R. (03.06.2014), pax (07.04.2014), Randomize (07.04.2014)
Старый 07.04.2014, 11:47   #14
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Jentos IDE

Jentos is an code
Вроде как 'an' ставится только когда следующая гласная, тут просто 'a' (наверное)

Games
Is empty yet.
Как-то странно звучит, может лучше просто 'nothing yet'?

Templates stored in templates.txt
templates ARE stored, думаю
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
SBJoker (07.04.2014), Жека (07.04.2014)
Старый 07.04.2014, 11:56   #15
wolfhound512
Знающий
 
Аватар для wolfhound512
 
Регистрация: 18.02.2008
Сообщений: 276
Написано 121 полезных сообщений
(для 299 пользователей)
Ответ: Jentos IDE

А я думал что пейпал запрещает принимать пожертвования в РФ
http://habrahabr.ru/post/200404/
__________________
GUI, GUIw512, AlbaLynx, Форум
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 03:17.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com