LINUX.ORG.RU
ФорумTalks

javascript в текстовом браузере миф?


1

2

Что мы имеем на сегодня?

Из Links js выпилили в 2007 году: «Javascript was removed. The reason is that it is very buggy, Martin Pergel doesn't have time to develop it and code is so messy that no one else can understand it.»

В Links2 то-же самое.

В elinks оно формально есть, включаю - нифига не пашет.

Подскажите плиз как правильно собрать/заюзать elinks либо какой то другой текстовый браузер с поддержкой javascript.

Как собирал его я:

# apt-get install libmozjs185-1.0 libmozjs185-dev libnspr4-dev libssl-dev autoconf g++;
# ln -sf /usr/lib/libmozjs185.so /usr/lib/libmozjs.so;
$ git clone http://elinks.cz/elinks.git;
$ git checkout a229adb19a99292d2705ab742aba5808d75536ca; # current master
$ ./autogen.sh;
$ ./configure --with-spidermonkey --enable-sm-scripting --includedir=/usr/include/js/ --includedir=/usr/include/nspr/;
$ make;

Делаем страницу которая детектирует работу javascript:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
<head>
<title>js test</title>
</head>
<body>

a

<script language="javascript" type="text/javascript">
<!--
document.write('hello world');
//alert('hello world');
//-->
</script>

b

</body>
</html>

После этого запускаем elinks и включаем javascript в настройках Setup -> Options manager -> ECMAScript -> Enable -> 1

Сохраняем, перепускаем elinks, открываем заготовленный html и видим только a и b.

ААААААААААААААААААААА!!! WTF?!!


Ответ на: комментарий от gh0stwizard

Спасибо.

Только там всё равно нужно запускать elinks, чтобы можно было использовать уязвимость. Кроме того,

Victim must voluntarily interact with attack mechanism

Я всё ещё не сообразил, чем может навредить бинарник, просто лежащий на винте. Возможно, я упускаю что-то очевидное.

beresk_let ★★★★★
()
Последнее исправление: beresk_let (всего исправлений: 1)
Ответ на: комментарий от xtron

А что такого на этом сайте особенного, что для него надо отдельный клиент? Может этот сайт и вовсе никому не нужен?

shell-script ★★★★★
()
Ответ на: комментарий от gh0stwizard

вместо google reader, который канул в воду. Да... А ведь там сплошной ajax. Ой-ой, какой я не тру, да?

Думаю консольный rss клиент плох отсутствием графики

xtron
() автор топика
Ответ на: комментарий от shell-script

А что такого на этом сайте особенного, что для него надо отдельный клиент? Может этот сайт и вовсе никому не нужен?

Вот и я о том

xtron
() автор топика
Ответ на: комментарий от xtron

Сдается мне что из 0.0001% поставят спец клиент только 0.00000000000000001%

Значит у вас маленькая аудитория, нерелевантный контент и т.п. Отдельный клиент модно запилить хотя бы для андроида. Но вы-то очень важная персона и не замарачивается подобными вещами. Зачем что-то делать, переделывать? Забухай. Поиграй. Положи болт. Сколько клиентов тебе написали, что у них не работает твой сайт под [e]lin[x|ks|2?]? Предполагаю, что ни одного. Держишь марку? Держи ее, только причем тут браузеры? Причем вообще внешнее оформление контента? Нипричем, люди хотят твой контент. И если потребуется что-то поставить или изменить браузер они сами выберут наилучший для себя вариант. Но нет, ты даже выбор им в виде отдельного приложения не хочешь дать из-за своего упрямства. Страдай :)

gh0stwizard ★★★★★
()
Ответ на: комментарий от gh0stwizard

Но нет, ты даже выбор им в виде отдельного приложения не хочешь дать из-за своего упрямства. Страдай :)

вот и страдаю))))

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

4.2 Графика, которую туда пихают - реклама в 95% случаев. Или ты из этих?

В rss каналы? рекламу? наверно я не те каналы читаю

xtron
() автор топика
Ответ на: комментарий от xtron

Насколько помню нормальные рсс-ридеры умеют грузить картинки через wget/curl + feh. Когда игрался с чистой консолью и без иксов с этим проблем не было. А вот сайтов без поддержки отдельных сгенерированных страниц под lynx дофига. И твой сайт будет почетным в определенных кругах, но не исправит ситуации запускать нормальный браузер. Уж сильно мир изменился (15 лет как).

И основная проблема всетаки не JS, а именно удаление лишних блоков (рекламы, переформатирование текста и т.д.), чтобы все выглядело естественно. Вместо правки html будешь править свой клиент-JS. Никакой разницы. Все твои страхи и проблемы с ленью останутся.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 3)

document.write у меня не отработал, а вот alert - вполне. Так что косяк имеет место быть.

www-client/elinks-0.12_pre5-r2, Gentoo

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

document.write у меня не отработал, а вот alert - вполне. Так что косяк имеет место быть.

японский бог, да действительно... спасибо! это уже что-то, покопаем особенности этого js движка...

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

Насколько помню нормальные рсс-ридеры умеют грузить картинки через wget/curl + feh.

и как это выглядит? текстовое сообщение и ссылка нажав на которую открывается картинка?

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

Уж сильно мир изменился (15 лет как).

думаю гипертекстовый фидонет был бы и сейчас очень даже популярен

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

Вместо правки html будешь править свой клиент-JS. Никакой разницы.

Разница огромна на самом деле. Это как в qt сейчас css/js вставляют чтобы разделить программеров и дизайнеров.

xtron
() автор топика
Ответ на: комментарий от gh0stwizard

я про то что лишние действия. неудобно наверно что текст и картинка видны не одновременно

xtron
() автор топика
Ответ на: комментарий от xtron

Разница огромна на самом деле.

Да не настолько. Хотя я не знаю какие у тебя объемы/шизы в голове. ИМХО, ты попусту тратишь время. Ставить elinks может быть запрещено по ряду причин. Ставить что-то третье-стороннее тоже. Поэтому мой выбор свой лэптоп и нормальный браузер. И не знаю я про твои проблемы (заносы).

gh0stwizard ★★★★★
()
Ответ на: комментарий от xtron

неудобно наверно что текст и картинка видны не одновременно

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

gh0stwizard ★★★★★
()
Ответ на: комментарий от gh0stwizard

Походу да придется забить на затею отобразить через elinks.

оно увы не умеет даже var a = document.createElement('span');

xtron
() автор топика
Ответ на: комментарий от xtron

если б они только прыгали. они ж ещё все ресурсы способны выжрать. не зря по интернетам без noscriptа ходить нельзя.

thunar ★★★★★
()
Ответ на: комментарий от gh0stwizard

Не будет выезжающих менюшек.

А почему не будет выезжающих менюшек? Пользователь выделил ссылку или элемент с onhover (при помощи курсора, а то и вообще навёл мышку, если она поддерживается), выехал div с менюшкой. Всё это теоретически вполне возможно в текстовом браузере.

proud_anon ★★★★★
()

alert() в твоём примере в elinks у меня работает. Вот document.write() — нет. Хотя раньше работал, помню, я изучал возможность использовать elinks в качестве tui-фронтенда к фреймворку. На 99% уверен, что даже jQuery какой-то старый удалось заставить работать. Но вот повторить потом не смог. То ли какую-то магию упустил, то ли поломали в новых версиях.



О:

Simply, document.write doesn't work yet and it probably won't work in near future either. Besides, there are many scripts which work with ELinks.

// http://comments.gmane.org/gmane.comp.web.elinks.user/1330

So, I'm sorry, but this probably is not going to happen in the foreseeable future. The main problem is document.write(), which is a huge pain to support with the current ELinks architecture and will probably not be implemented soon, if ever.

// http://marc.info/?l=elinks-users&m=109615143204718

KRoN73 ★★★★★
()
Ответ на: комментарий от proud_anon

Всё это теоретически вполне возможно в текстовом браузере.

А практически получится ерунда. Смотришь страницу на 50% и тут выезжает новый div и все съезжает, а потом думаешь «чо это было».

gh0stwizard ★★★★★
()
Ответ на: комментарий от gadfly

Аналогично. Сейчас с links -g. Нафейхоа городить комбайны, а потом носкрипт, флешблок, адблок и тысячи костылей юзать.

kraftello ★★★★★
()
Ответ на: комментарий от xtron

После добавления аяксов и прочей мути, оно станет кривее и неудобнее. А после заявлений о форматировании скриптами, оно вообще в принципе неюзабельно.

Вердикт - не нужно.

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

shell-script ★★★★★
()
Ответ на: комментарий от gh0stwizard

Так вот вам простой путь - не поддерживайте этот класс браузеров.

Спасибо за решение.

Вопрос не в том, чтобы покласть или не покласть, а в интересе :-)

Y ★★
()
Ответ на: комментарий от Y

а в интересе :-)

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

Просто надо взвешивать плюсы и минусы. Я тоже решал подобные «ненужные» вопросы, иногда ошибался, иногда - нет.

gh0stwizard ★★★★★
()
Ответ на: комментарий от shahid

Да не, гимора в самом подходе не особо много. Правда без понятия, чего на текстовых браузерах повылазит.

Если чо - ссылки на пруфы в профиле. Там страница загружается целиком только при первом открытии, а дальше все клики фигачатся через ajax + history api.

Vit ★★★★★
()

Убери из скрипта все комментарии, оставь только строкчку, которая должна исполняться. Засунь всё в head. Ещё бывает такое, что с локалхоста нельзя скрипты исполнять, но это скорее к эксплореру.

CYB3R ★★★★★
()
Ответ на: комментарий от ritsufag

Вы пишите на рельсе где шаблонизация и сборка страничек это очень накладная операция?

Нет сейчас это ужасный php с html в коде, хочу уйти от этого

xtron
() автор топика
Ответ на: комментарий от shell-script

После добавления аяксов и прочей мути, оно станет кривее и неудобнее.

На том же lor УЖЕ js и выезжающие области ответов. Стал он хуже? Все можно сделать красиво и юзабельно, а можно и без js гадко и вырвиглазно.

xtron
() автор топика
Ответ на: комментарий от shell-script

Зачем нужны выезжающие области ответов?

Лично мне не нужны. Цель не это.

У меня скрипты запрещены. Всё красиво и удобно. И без тормозов.

Можно все сделать красиво и удобно но со скриптами.

xtron
() автор топика
Ответ на: комментарий от xtron

А можно и без. Я вот о чём. И самое главное заключается в том, что 99% скриптов не дают реального функционала. Сомнительные свистелки - да, типа красивости(от которых глаза вытекают) - да, «суперполезный» ajax, который при нынешних скоростях интернета не нужен(отработка скрипта занимает больше времени, чем загрузка всей страницы целиком заново) - это тоже да. А вот реально удобного функционала с помощью яваскрипта я так что-то и не припомню.

Понятия «веб-приложение» для меня не существует, потому что я не понимаю, почему я должен пользоваться чем-то кривым, неудобным и тормозным в браузере, когда могу делать это нормально с помощью локальной программы.

Вот и выходит, что проще отключить этот яваскрипт. Так хоть текст почитать можно без глюков.

shell-script ★★★★★
()
Ответ на: комментарий от shell-script

проще отключить этот яваскрипт. Так хоть текст почитать можно без глюков.

Очень мало где

xtron
() автор топика
Ответ на: комментарий от shell-script

Такие как ты лепят его везде.

Те кто лепят его везде не интересуются теми кто юзает [e]links[2]

xtron
() автор топика
Ответ на: комментарий от xtron

Линупс развивается в пользу сотен тонн никому не нужного гавнокода, а ведь мог бы занять свою нишу на рынке.
Два дня искал миф под названием w3m-js!
Как щас помню, интернет 3-4 месяца не подключал, в 2 часа ночи сидя за таблицами в libreoffice-calc понял что мне срочно нужен патч pertag для dwm...
Телефон-wvdial-w3m, повезло что без js на сайте можно было посмотреть и скачать.

windusjatnik
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.