Перейти к содержимому






Фотография
* * * * * 1 голосов

Пишу браузер для ОС

Написано Krutoy , 02 Июль 2015 · 1 833 просмотров

браузер oc html css гуи
Пишу браузер для ОС Итак, начинаю большой проект - браузер реальных HTML страниц для OpenComputers.

Всё началось с того, что я решил прикрутить скроллинг лога моего интернет-сервера.
Потому я понял, что для этого мне нужно будет подключить GUI, и решил что это будет GML.
Но мне не нравилось, что весь код контролов там распологается в одном файле. Я начал разделять отдельно.
Потому я понял, что нужно перевести его .gss формат стилей на всем известный CSS, для большей понятности.
От этого мне захотелось сделать методы контроллов больше похожими на DOM-элементы...

И тут понеслось.

Очнулся через 5 дней усиленного изучения Document Object Model, CSS стилей, парсинга HTML и многочисленных библиотек под Lua.
HTML парсер на луа я нашел, и даже его начал внедрять, но потом нашел монстра похлеще, с проработанным древом наследования и множеством других функций, хотя для него пришлось переписать парсер, так как он работал с либами на C.

Пока показать могу только результат работы парсера.
В коричневых областях слева оригинальный файл. Парсер перебирает его по косточкам, разбирая на отдельные теги, аттрибуты и ноды. В правой части обратная сборка документа из таблицы.
В черном окне - запущенный эмулятор ОС, который просто выводит текстовые данные из страницы.
Красным выделены разницы в файлах. Как видите, парсер только отбросил !DOCTYPE и в некоторых местах убрал лишние пробелы.

Изображение


Мне согласился помочь Zer0Galaxy и написать парсер для css файлов, а так же поиск аттрибутов в них.

Браузер планируется сделать так, что бы он умел открывать настоящие веб-сайты, например http://computercraft.ru/ , и выполнять в них навигацию.
Из главных фич будет быстрая отрисовка, и возможность использования библиотек как интерфейса для создания GUI.

Сейчас исходники весят уже 200кб. Это будет круто.

  • Alex, Fingercomp, Asummonster и еще 1 это нравится



Зная вашу тенденцию завершать проекты досрочно, а, точнее, отсутствия такого, в отличие от "супер-пупер" прогеров типа Монстрика или Лехаинк, надеюсь на скорый релиз — очень хочется увидеть данную махину вживую, так сказать, в действии. А если всё-таки можно будет реальные страницы открывать — вообще бомба будет! Не придётся выходить из игры только для копирования пастбина какого-нибудь там замка навороченного, к примеру... В общем, как уже сказал, с нетерпением буду ждать реализацию воистину Крутой™ идеи)

Соглашусь с Фингеркомпом, идея воистину Крутая! Вопрос-предлодение: будет ли проще сделать браузер, заточенный под форумы? Насколько я в курсе, все они устроены примерно одинаково

Зная вашу тенденцию завершать проекты досрочно, а, точнее, отсутствия такого, в отличие от "супер-пупер" прогеров типа Монстрика или Лехаинк, надеюсь на скорый релиз — очень хочется увидеть данную махину вживую, так сказать, в действии. А если всё-таки можно будет реальные страницы открывать — вообще бомба будет! Не придётся выходить из игры только для копирования пастбина какого-нибудь там замка навороченного, к примеру... В общем, как уже сказал, с нетерпением буду ждать реализацию воистину Крутой™ идеи)

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

 

Соглашусь с Фингеркомпом, идея воистину Крутая! Вопрос-предлодение: будет ли проще сделать браузер, заточенный под форумы? Насколько я в курсе, все они устроены примерно одинаково

В браузере будет функция "встроенных стилей" для определенных сайтов. Это значит, что можно будет иметь набор CSS для изменения внешнего вида сайтов, поправляя косяки.

Фотография
Asummonster
03 июл 2015 09:43

Зная вашу тенденцию завершать проекты досрочно, а, точнее, отсутствия такого, в отличие от "супер-пупер" прогеров типа Монстрика или Лехаинк, надеюсь на скорый релиз — очень хочется увидеть данную махину вживую, так сказать, в действии. А если всё-таки можно будет реальные страницы открывать — вообще бомба будет! Не придётся выходить из игры только для копирования пастбина какого-нибудь там замка навороченного, к примеру... В общем, как уже сказал, с нетерпением буду ждать реализацию воистину Крутой™ идеи)

А что монстрик?Монстрик свои программы ни разу не представлял,до того,как они обретут более или менее рабочий вид. 

Фотография
Asummonster
03 июл 2015 09:45

Монстрик почти втихаря работает, и делится своими идеями только с крутым и трояном

Меня тут посетила идея, крутой, а если сделать возможным встраивать луа код в страницу как javascript, с ограничениями конечно.

Меня тут посетила идея, крутой, а если сделать возможным встраивать луа код в страницу как javascript, с ограничениями конечно.

Да, это в планах к реализации. Но идеально было бы найти конвертер JavaScript в Lua.

Фотография
Asummonster
04 июл 2015 08:52
Я только боюсь, какой объём будут занимать страницы в оперативной памяти/ жёстком диске...

Я только боюсь, какой объём будут занимать страницы в оперативной памяти/ жёстком диске...

Бойся бойся. Расчетно - 300-500 кб в оперативке и столько же на жестком.


Обратные ссылки на эту запись [ URL обратной ссылки ]

Обратных ссылок на эту запись нет

Новые комментарии

0 посетителей

0 пользователей, 0 гостей, 0 анонимных