Netsurf

...
  • А модно ли портировать SpiderMokey?
    The motto of the wise is: be prepared for surprised http://vlampochke.esy.es/
  • ppk-center wrote:А модно ли портировать SpiderMokey?
    Netsurf developers are (actively) working on their own javascript support. The engine itself is ready AFAIK.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • As for now, js isn't very helpful. It still supports only console due to bad DOM support.
  • Yeah! But NetSurf has a very bad JavaScript. I hope this problem will be decide soon.
    The motto of the wise is: be prepared for surprised http://vlampochke.esy.es/
  • Как собрать Netsurf

    SoUrcerer « Чт сен 12, 2013 12:48 pm » берем мой menuetlibc http://wavetale.com/me.7z
    SoUrcerer « Чт сен 12, 2013 12:56 pm » распаковываем в домашнюю папку
    SoUrcerer « Чт сен 12, 2013 12:56 pm » делаем export MENUETDEV=/home/leency/me
    SoUrcerer « Чт сен 12, 2013 12:57 pm » переходим в папку с netsurf; netsurf/netsurf/objs
    SoUrcerer « Чт сен 12, 2013 12:57 pm » даем команду make -f make.all
    SoUrcerer « Чт сен 12, 2013 12:57 pm » получаем файл _netsurf

    + см. viewtopic.php?f=40&t=2315&start=15#p49181

    Для х64 систем вначале нужно сделать:
    sudo dpkg --add-architecture i386
    sudo apt-get upgrade
    sudo apt-get install ia32-libs
    Из хаоса в космос
  • Как насчет того чтобы залить в ISO образ гарантированно работающей копии программы?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Так нужно сеть допилить и GUI, и можно в ISO. У меня щас работы по 12 часов в день, некогда :( А Leency отлынивает :P
  • SoUrcerer wrote:Так нужно сеть допилить и GUI, и можно в ISO.
    Ну, можно же довести до какого-нибудь минимально рабочего состояния, чтобы хоть на уровне HTMLv работало?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • То, что я писал Leency о том, как доводить до ума Netsurf. Вдруг кто ещё займется? На вскидку, на libnsfb нужно потратить полдня работы, на сетевую - ещё день или два. Это всё с учетом того, что нужно войти в курс дела. После этого останется полировать, чинить разбор путей к файлам и так далее.
    Хей-хо! давай я научу тебя править lib NSFW
    *NSFB :)

    http://websvn.kolibrios.org/filedetails ... Fkolibri.c
    ничего не напоминает? htmlv там?:)

    функция static bool kolibri_input отвечает за ввод. Мышь, как я помню, работает. Скролл тоже туда можно добавить

    А вот и костыль:
    if (got_event==2) { //key pressed
    event->type = NSFB_EVENT_KEY_UP;
    event->value.keycode = __menuet__getkey();
    return true;
    }

    Здесь костыль, из-за которого клава не работает. NSFB получает события двух типов: клавиша нажата и клавиша отпущена.
    Это позволяет отлавливать комбинации клавиш; соответственно, тут нужно разбиратть скан-коды и предавать EVENT_KEY_UP и EVENT_KEY_DOWN соответственно.


    http://websvn.kolibrios.org/filedetails ... ce%2Fsdl.c - вот тут хорошо видно enum nsfb_key_code_e sdl_nsfb_map[] - это таблица соответствия кода клавиши реального и её кода внутри netsurf, это тоже нужно реализовать.

    Из плюшек NSFB: функция-заглушка kolibri_cursor - позволяет ставить произвольный курсор. Нужно только запрограммировать это.


    "Главная" рисовательная функция:
    void kolibri_window_redraw(nsfb_t *nsfb){

    __menuet__window_redraw(1);
    __menuet__define_window(100,100,nsfb->width,nsfb->height,0x43000080,0x800000FF,0x000080);
    __menuet__write_text(3,3,0xFFFFFF,"Netsurf",7);
    __menuet__debug_out("f65 is mighty!\n");

    //here put image pixels! it's 32bpp
    f65(0,0, nsfb->width, nsfb->height, pixels);
    __menuet__window_redraw(2);
    }

    Видно, что определяется окно с заданными размерами (nsfb->width. nsfb->height), но левого типа, хотя вроде заголовок должен быть (не помню). Затем выводится функцией f65 картинка pixels, которая заполняется самим nsfb. Вот и весь redraw

    Нужно править пару функций - и управление в netsurf станет человеческим. Правда, ввод русского скорее всего работать не будет - надо будет спрашивать разрабов Netsurf, как в NS русские буквы вводить.


    Теперь сам Netsurf. Сетевой код - тоже не rocket science.
    http://websvn.kolibrios.org/filedetails ... s%2Fcurl.c
    Функция fetch_curl_process запускает downloader и потом убивает, запускает заново, тормозит nsfb (он замирает), и затем открывает файл. Нужно по-человечески это всё сделать, а не так костыльно - и сеть тоже заработает. В идеале реализовать POST, и можно будет сидеть на форуме.
  • SoUrcerer
    Хорошо, сформулирую вопрос по другому - ты можешь выделить некоторое количество своего времени, для того чтобы собрать гарантированно работающую сборку, содержащую все нужные файлы - без левых зависимостей типа "где то на моем личном жестком диске валяется файл, а вам его не отдам потому что. тчк", которую потом можно просто так взять и залить в ISO образ?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Сформулирую ответ ещё раз: нет, я не могу выделить некоторое количество времени, чтобы исправить проблемы Netsurf. Это не будет рационально - при моей текущей загрузке выполнение этих задач потребует примерно трех месяцев. В ближайший месяц свободных двух дней у меня скорее всего не будет. Поэтому более рационально призвать в тему кого-нибудь из молодых любителей Си.

    Замечу, что никаких "левых" зависимостей нет, hidnplayr и Leency успешно собрали Netsurf на своих компьютерах используя библиотеки http://wavetale.com/me.7z - которые я выложил на ftp вот тут: ftp://kolibrios.org/users/SoUrcerer/me.7z и файлы с SVN.
  • Хорошо, тема закрыта и я ее больше поднимать не буду.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Отпишусь уже и я.

    Да, я очень хотел заняться Netsurf и таки попробовал. Почему не сложилось:
    - мои навыки программирования на Си пока слишком плохи для программы такого уровня
    - сборка требует Линукс

    С гуи у Netsurf всё нормально.
    Каковы сейчас проблемы Netsurf:
    - он не запускает файлы по ассоциации
    - он падает и часто
    - он работает очень медленно
    Из хаоса в космос
  • NS работает медленно из-за того, что ждет downloader каждый раз. У меня файлы по ассоциации отлично открываются - не знаю почему у тебя нет.
    А вот насчёт "падает" - это нужен очевидно отладочный вывод (запуск с ключом -v).
    Leency, подумай о NS ещё разок, не так уж страшен чёрт, как его малюют :)
  • Who is online

    Users browsing this forum: No registered users and 2 guests