матем. формулы на сайте

musi

Господа!
А никто никогда не заморачивался вопросом: можно ли к какомунить бесплатному движку сайта типа мамбы пристроить модуль, чтоб поддерживал ввод и соответственно просмотр математических формул. Может даже примеры есть? Или, на крайняк, чтоб из ворда можно было копи-пэйстить ?

ava3443

оно?

ava3443

Или, на крайняк, чтоб из ворда можно было копи-пэйстить
а вот это вряд ли бывает

valentin160962

На счет готовых модулей бесплатных движков не знаю, а самому написать - можно. См. например http://phys.web.ru/ . Как это делается? Когда пишешь текст с формулами, формулы в формате TeX. При отправке текста скрипт передает эти формулы TeX'у, который их компилит. Далее утилитка, преобразующая dvi в gif, получается картинка с формулой. Далее исходный скрипт вместо формулы подставляет картинку. Примерно так это сделано на www.dubinushka.ru/forum.
Если нужен специалист по этому вопросу - айда к вебмастеру phys.web.ru

durka82

Наверное еще можно на флэше подобную штуку сделать (а мб уже и есть ).
По крайней мере все необходимое у флэша для этого есть...

Helga87

И какие возможности flash, кроме того, что он тоже умеет картинки показывать, будут юзаться? Вроде тут проще, не заморачиваясь, генерировать обычный html с текстом и картинками.

valentin160962

Хм, а возможность верстать ТеХ на сервере у флэша тоже есть?

durka82

Вроде тут проще, не заморачиваясь, генерировать обычный html с текстом и картинками
Ключевое слово здесь - генерировать .
То есть придется заранее это все создавать.
При использовании флэша вполне возможно, что удастся из исходного документа (тех, например) самим флэшом сделать формулы.
И какие возможности flash, кроме того, что он тоже умеет картинки показывать, будут юзаться?
1. Никогда не проверял, будут ли нормально во флэше отображаться всякие шрифты со спецсимволами, но не вижу, почему бы и нет.
2. Он умеет работать с векторными примитивами, а символы в формулах (да и в ТТ шрифтах) тоже строятся из векторных примитивов. Вполне допускаю, что можно без особых усилий переносить все это в вектор флэша.

durka82

А это вообще не вопрос:
Сделать на флэше текстовый редактор (или взять готовый) - как нечего делать.
А на сервере поставить какой-нибудь ТЕХ и написать скрипты для компиляции.
А уж связать нажатие кнопочки в флэше с передачей файла на сервер и его компиляцией - дело техники
Или что ты имел в виду?

Helga87

Хм, т.е. ты предлагаешь написать/взять TeX-процессор на flash? Похоже, это и сделать реально, и смысл имеет.
Только надо продумать вопрос выделения и копирования получившегося текста в буфер обмена (видимо в rtf-е). Иначе будет неудобно пользоваться. Но не совсем уверен, что это можно сделать...

Helga87

Или ты только отрисовывать на flash предлагаешь?

Dasar

если идти стандартным путем, то заюзать MathML: http://www.w3.org/Math/
если браузер поддерживает svg, то MathML - можно на стороне клиента преобразовывать.
иначе на стороне сервера делается: MathML -> SVG -> Gif/Jpg

valentin160962

А смысл? Чем тебя не устраивает обычный текстовый "редактор" а-ля textarea? Он не нужен, а все остальное можно сделать обычным серверным скриптом (cgi, php, asp). Нахрена флэш?
При использовании флэша вполне возможно, что удастся из исходного документа (тех, например) самим флэшом сделать формулы.
Не удастся. Ты затрахаешься, пардон, эти формулы рисовать. Почитай о возможностях ТеХа чуток, или посмотри на примеры формул и т.п.
Ключевое слово здесь - генерировать .
То есть придется заранее это все создавать.
Не понял. Картинки создаются в момент выкладывания материала скриптом, который этот материал принимает из веб-формы. Нет, можно, конечно, каждый раз при просмотре страницы запускать ТеХ и т.д... Оставим это мазохистам;)

valentin160962

Сомневаюсь и в реальности, и в наличии смысла;)
Реально сделать маленькую программулину, которая рисует формулы из очень ограниченного набора. И, может быть, для школьного, скажем, сайта это имеет смысл, если уж ничего больше не остается (не забывайте еще, что flash работает не у всех...).
Для чего-то более серьезного - нереально. Запаритесь писать и это будет невероятно тормозить.

Helga87

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

Dasar

View source смотрел? там просто в html-е идет тег math, понятно, что твой браузер этот тег не понимает - отсюда и кривое отображение
Открой, например, эту же страницу в FireFox-е, он более менее покажет, и даже тебе расскажет какие плагины надо еще доставить.

durka82

т.е. ты предлагаешь написать/взять TeX-процессор на flash
Почему бы и нет.
Только вот не уверен насчет скорости на больших документах.
Только надо продумать вопрос выделения и копирования получившегося текста в буфер обмена
Вариантов много.
Например, можно формировать итоговый документ на сервере и предлагать его к загрузке на клиент.
А можно публиковать документ как html-страничку с вставками формул на флэше.

Helga87

Сомневаюсь и в реальности, и в наличии смысла
В реальности я не сомневаюсь, в смысле - возможно, поскольку это явно куда геморнее, чем запускать TeX-процессор на сервере.
не забывайте еще, что flash работает не у всех...
flash работает у 97-98% пользователей, статистика доступна тут.
...будет невероятно тормозить
Надо проверять, но сомневаюсь - никто ведь не собирается компилировать мегабайтные документы, тут видимо интересен вопрос небольших вставок из формул.

Dasar

причем основной смысл стандартного подхода, что все стрелочки:
Tex -> MathML
MathML -> gif/jpg
Html+MathML -> pdf
уже написаны.

Helga87

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

Dasar

могу еще раз повторить:
на стороне сервера делается: MathML -> SVG -> Gif/Jpg

durka82

Не удастся. Ты затрахаешься, пардон, эти формулы рисовать. Почитай о возможностях ТеХа чуток, или посмотри на примеры формул и т.п.
Плавали, знаем (с)...
Если писать формулы командами ТеХа, а отрисовывать флэшом - то в чем проблема?
В крайнем случае можно делать что-то вроде ТеХ->MathML->SVG->Flash.
не забывайте еще, что flash работает не у всех...
А у кого не работает?
Запаритесь писать
это будет невероятно тормозить
Был опыт? Или на основании чего сделаны такие оценки?

Dasar

зачем для показа статических картинок нужен флэш? если можно просто показать стат. картинки?

valentin160962

Прошу прощения, но зачем, если есть
TeX -> (DVI ->) PDF/JPG/GIF/PS/...
И выглядит гораздо красивее. И любой графический браузер это поймет. (И любой текстовый браузер+мозги - тоже, если сделать alt="текст формулы". И уже написано. И лучше хрен напишешь.
2: В общем, хотите писать на флэше - пишите. Вы, похоже, слишком любите флэш;) А как напишете - посмотрим на результаты;)
ЗЫ: А автор треда молчит

Helga87

Да, этот подход пойдет. Только он ровно такой же, как и предлагали в самом начале - на сервере делаются картинки, а на клиенте они просто отображаются.
А вот подход с установкой дополнительных плагинов явно неинтересен, как и непонятна целесообразность flash

durka82

Флэш генерит формулы на лету по описанию.
Например, сохраненную таким образом страничку можно править (именно формулы) без участия сервера.
Хотя SVG в этом качестве мб и более удобен, если существует и обратное к MathMl->SVG преобразование (а оно существует?).

Dasar

> Прошу прощения, но зачем, если есть
> TeX -> (DVI ->) PDF/JPG/GIF/PS/...
Потому что тексты обычно пишутся в html-е, а не в Tex-е.
Html+MathML -> Html+Gif, проще редактировать и преобразовывать, чем Html+Tex

Dasar

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

Dasar

тот же Maple - тебе эту же формулу на MathML-е может и вычислить сразу.

valentin160962

Если писать формулы командами ТеХа, а отрисовывать флэшом - то в чем проблема?
Проблема - отрисовывать флэшом. Впрочем, я, может, недостаточно опытный программист. Мне эта задачка кажется весьма непростой...
А у кого не работает?
Статистику подводить не берусь, но у меня, например,частенько на сайтах вылезают ошибки флеша и т.п. Думаю, что из-за несоответствия версий.
это будет невероятно тормозить
Был опыт? Или на основании чего сделаны такие оценки?
Каюсь, опыта не было;) Оценки - на основе общего впечатления от разных виденных на сайтах дизайнерских изысков на flash, и идеи, что мультиплатформенные вещи тормозят по определению.
Да, и сколько это будет весить - тоже немаловажно.

Helga87

Если для корректного отображения формул требуется плагин, то это неинтересно для всех случайных пользователей.
Если плагин требуется для того, чтобы можно было редактировать формулу без отсылки промежуточных результатов на сервер, то такой подход возможен. Только раз в неделю на форуме сайта будет появляться вопрос "Как редактировать формулы? Как установить плагин?" и пр.

Helga87

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

valentin160962

Потому что тексты обычно пишутся в html-е, а не в Tex-е.
Html+MathML -> Html+Gif, проще редактировать и преобразовывать, чем Html+Tex
А чем не нравится "текст текст текст [formula]формула[/formula] текст текст..." . И скрипт.
Редактировать однозначно проще ТеХ. На нем, все-таки, книжки пишутся, а не на MathML. Преобразовывать быстрее, но за счет скудности возможностей.
интересен, если пользователь хочет подредактировать формулу, или сохранить формулу для дальнейшей обработки.
Формулы в ТеХе отлично редактируются и сохраняются;) И пишутся в любом текстовом редакторе и весьма компактно. Сравни
<mrow>
<msup> <mfenced open="[" close="]"> <mrow> <mi>a</mi> <mo>+</mo> <mi>b</mi> </mrow>
</mfenced> <mn>260</mn> </msup> <mo>+</mo> <msub> <mfenced open="{" close="}">
<mrow> <mi>a</mi> <mo>+</mo> <mi>b</mi> </mrow> </mfenced> <mi>i</mi> </msub> </mrow>

и
 [a+b]^{260} + \{a+b\}_i 

Пример взят из странички примера с MathML

Dasar

Хранил бы я точно в MathML, а синтаксис Tex-а просто бы поддерживал при вводе.

valentin160962

Обоснуй;)

Helga87

С этим полностью согласен

Dasar

MathML - проще парсится, поэтому над ним, намного, проще проводить всякие разные преобразования: например, найти и выделить все вхождения переменной x и т.д.
при переводе из Tex-а в MathML могут быть всякие неоднозначности, поэтому если хранить Tex, а в MathML переводить на лету, то могут возникать всякие нехорошие ошибки.
Поэтому из Tex-а в MathML - лучше переводить сразу - под контролем пользователя.

Ivan8209

> под контролем пользователя.
Чё?
Да пошёл он, этот MathML, ко всем чертям!
Это я как пользователь говорю.
Ни один вменяемый пользователь не будет изучать эту идиотскую поделку.
Вот TeX --- другое дело. На нём книги пишутся.
---
...Я работаю антинаучным аферистом...

Dasar

> если существует и обратное к MathMl->SVG преобразование (а оно существует?).
нет, конечно
SVG - это векторный рисунок.

Ivan8209

> MathML - проще парсится
Кстати, наглая ложь.
---
...Я работаю антинаучным аферистом...

durka82

Проблема - отрисовывать флэшом. Впрочем, я, может, недостаточно опытный программист. Мне эта задачка кажется весьма непростой...
Если мы можем взять символ формулы в ТеХе и преобразовать его в SVG, скорее всего никаких проблемм перенести это описание во флэш не будет (с чего бы это нельзя было замапировать один векторный формат в другой ?!).
Тогда сложность задачи определяется сложностью автоматизации этого процесса.
частенько на сайтах вылезают ошибки флеша
А как это вообще выглядит?
Это браузер сообщает или сам флэш?
Оценки - на основе общего впечатления от разных виденных на сайтах дизайнерских изысков на flash
Флэш - достаточно гибкий инструмент.
Если что-то выглядит тяжело и работает медленно - это не значит, что нельзя сделать это быстрее и легче
Как правило, как раз наоборот.
Да, и сколько это будет весить - тоже немаловажно.
Ну уж в этом смысле флэшу легко побить html с картинками - векторная графика позволяет значительно уменьшить вес сайтов (если конечно не требуется фотореалистичность)

valentin160962

Если мы можем взять символ формулы в ТеХе и преобразовать его в SVG,
А, я понял, в чем ваша проблема. Вы думаете, что в ТеХе преобразуются символы...;)
Тогда попробуйте нарисовать в MathML вот это:
http://dubinushka.ru/form/formula/56_707d243aa9789022882fe327b773895b.png

durka82

А, я понял, в чем ваша проблема. Вы думаете, что в ТеХе преобразуются символы...;)
А где там не символы?
Не готов прямо сейчас броситься проверять.
Так что в чем моя проблема?
Мб мы под "символами" подразумеваем не одно и то же?..

valentin160962

при переводе из Tex-а в MathML могут быть всякие неоднозначности, поэтому если хранить Tex, а в MathML переводить на лету, то могут возникать всякие нехорошие ошибки.
Правильно. А при переводе из MathML в "просто текст" тоже могут возникнуть неоднозначности. Зато обратно - нет;) Давайте хранить все в просто тексте!
И опять же, MathML хрен у кого нормально показывается, так что давайте не будем его обсуждать;)

Dasar

>> MathML - проще парсится
> Кстати, наглая ложь.
ты не рюхаешь фишку.
вышеприведенная задача про выделение использования переменной x:
вся задача делается следующими строчками:

<template select="mi='x'">
  <attribute name="mathcolor">red</attribute>
</template>

valentin160962

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

Dasar

> Тогда попробуйте нарисовать в MathML вот это:
http://dubinushka.ru/form/formula/56_707d243aa9789022882fe32...
запусти Maple, введи эту формулу, и нажми SaveAs.

Ivan8209

А, ты про это.
Ну и хрен с ним.
Зато хоть формулы будут красиво, по-людски, а не по-уродски нарисованы.
---
...Я работаю антинаучным аферистом...

Dasar

> Правильно. А при переводе из MathML в "просто текст" тоже могут возникнуть неоднозначности. Зато обратно - нет;) Давайте хранить все в просто тексте!
я не говорил, что при обратном преобразовании (mathml -> tex) не будет неоднозначностей.
MathML и Tex, примерно, одиннаковы выразительны, но не идентичны, соответственно при переводе одного в другое - будет идти искажения информации.
Близкий пример - это, например, преобразование текста из русский в английский, и наоборот.
да, русский и английский - примерно, одиннаково выразительны - но при переводе идет искажение информации.
Поэтому, если в обоих этих случаях - перевод будет вестись под руководством того, который и вводит информации - то можно будет эти искажения свести к минимуму.

valentin160962

Ну и нахрена мне это надо? При обсуждении _очень_ редко пишут формулы, которые надо срочно засунуть в мэпл и посчитать;)
Кстати, математика умеет импортировать eps, в который можно конвертировать TeX. Только зачем все это?;)

valentin160962

MathML и Tex, примерно, одиннаковы выразительны
Вот это, извини, совсем неправда. Опять же, набери в MathML то, что на картинке по ссылке, которую я постил. И тогда утверждай, что MathML хоть чуть-чуть дотягивает до ТеХа.
ЗЫ: Как ты себе представляешь этот контроль со стороны пользователя?

Dasar

> Опять же, набери в MathML то, что на картинке по ссылке, которую я постил
ты сейчас с кем разговариваешь?
я тебе уже выше ответил - как это можно быстро сделать.
> Как ты себе представляешь этот контроль со стороны пользователя?
хотя бы отрисовать формулу.

valentin160962

>> Опять же, набери в MathML то, что на картинке по ссылке, которую я постил
>ты сейчас с кем разговариваешь?
>я тебе уже выше ответил - как это можно быстро сделать.
Ну сделай, и покажи результат. У меня Мапла нет, не могу воспользоваться этими инструкциями. Я вот не верю, что результат будет хороший;)
>> Как ты себе представляешь этот контроль со стороны пользователя?
>хотя бы отрисовать формулу.
В смысле пользователь будет сам отрисовывать формулу?;) А зачем тогда что-то делать вообще?;)

Dasar

<math xmlns="http://www.w3.org/1998/Math/MathML">
<mrow> <mo>&lpar;</mo> <mfrac> <mrow> <mo>&int;</mo> <msup> <mrow> <mi>e</mi> </mrow> <mrow> <msup> <mrow> <mo>&minus;</mo> <mi>r</mi> </mrow> <mrow> <mo>&minus;</mo> <mn>2</mn> </mrow> </msup> </mrow> </msup> </mrow> <mrow> <mover> <mrow> <munder> <mo>&xrarr;</mo> <mrow> <mi>r</mi> </mrow> </munder> </mrow> <mo>&Dot;</mo> </mover> </mrow> </mfrac> <mo>&rpar;</mo> </mrow></math>
> В смысле пользователь будет сам отрисовывать формулу?;) А зачем тогда что-то делать вообще?;)
на основе чего ты думаешь, что ты понял, что такое MathML?

Ivan8209

Как пользователь, заявляю, что это отстой.
Ты картинку покажи.
---
...Я работаю антинаучным аферистом...

durka82

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

Ivan8209

Принципиальна не сложность этого, а то, как оно выглядит после MathML.
---
...Я работаю антинаучным аферистом...

Ivan8209

Это уродство.
Вывод --- в биореактор.
---
...Я работаю антинаучным аферистом...

musi

Спасибо за интересное обсуждение. Собственно вопрос был не в том как запрогать новый скрипт, а узнать нет ли готовых Кстати, по опыту MathMl не очень удобная штука вплане нагрузки на сервер, а делать на флеш - это либо просить всех посетителей пользоваться одним веб-браузером, либо писать большой справочник как им настроить свой браузер - вобщем много гемора
И еще момент идея выкладывать текст с формалами как одну большую картинку неудобно по 2 серьезным причинам:
1) поисковая система не найдет нужные слова
2) посетитель врядли сможет набрать текст и отправить на сайт
ЗЫ. Спасибо за сссылку на мамбу, тестирую ...

durka82

а делать на флеш - это либо просить всех посетителей пользоваться одним веб-браузером
Откуда такая информация?
Для всех основных браузеров (IE, Mozilla/Firefox, Opera) флэш есть и работает одинаково.
Установить эго (если он вдруг отсутствует) тоже не сложно.
либо писать большой справочник как им настроить свой браузер
При настройках браузера по-умолчанию тоже все должно работать.
Так что никакого гемороя я не вижу.
Другое дело, что если готового решения уже нет и писать его некому.
идея выкладывать текст с формалами как одну большую картинку
А разве ее кто-то озвучивал?
Мне попадались только идеи, когда сам текст в html, а формулы либо в виде картинок, либо в MathMl-е.
поисковая система не найдет нужные слова
Даже в этом случае к странице, в которой лежит картинка, можно привязать ключевые слова.
посетитель врядли сможет набрать текст и отправить на сайт
А это вообще совсем другое - здесь речь шла в основном про отображение результата.
А для ввода посетителем текста/формул нужен либо текстовый, либо визуальный редактор, реализованный на html/flash/java и тп.
А такое, особенно последнее на flash/java будет удобнее и функциональнее, чем на html сотоварищи.
Но у java-апплетов проблемм с совместимостью, размером и скоростью (да и с необходимостью настройки) больше (это здесь уже когда-то обсуждалось).

valentin160962

Не, я офигел окончательно. Им теперь еще визуальный редактор понадобился. Ну правильно, сделали вход на уровне второго этажа - придется лесенку приставлять;)

Ivan8209

> А для ввода посетителем текста/формул нужен либо текстовый,
> либо визуальный редактор, реализованный на html/flash/java и тп.
Для ввода текста достаточно обычного текстового редактора.
Не надо изобретать колесо.
> Для всех основных браузеров (IE, Mozilla/Firefox, Opera) флэш есть и работает одинаково.
> Установить эго (если он вдруг отсутствует) тоже не сложно.
Расскажи, как для этих "основных браузеров" для ввода
текстовых форм использовать _текстовый_редактор_,
а не ту убогую поделку, которая идёт с ними по умолчанию.
---
...Я работаю...

ava3443

Для всех основных браузеров (IE, Mozilla/Firefox, Opera) флэш есть и работает одинаково.
ИМХО все предложения использовать Flash без альтернатив (т.е. таким образом, что если flash нет, то функционал недоступен) идут нах. Хотя бы потому, что у меня на лаптопе Win2003, под который флеша нет.
Да и вообще не понял, нафига козе баян. Ну объясните, зачем при наличии как минимум двух возможностей показа формул (1-отрисовка на сервере и выдача браузеру PNG, 2-отрисовка MathML браузером) изобретать колесо, реализуя что-то аналогичное на флеше? Зачем тут флеш?

ava3443


если браузер поддерживает svg, то MathML - можно на стороне клиента преобразовывать.
иначе на стороне сервера делается: MathML -> SVG -> Gif/Jpg

Открой, например, эту же страницу в FireFox-е, он более менее покажет, и даже тебе расскажет какие плагины надо еще доставить.
У меня такое впечатление, что FireFox отрисовывает MathML без всяких плагинов (по крайней мере, версия 1.0.7 под Windows).

Helga87

 
ИМХО все предложения использовать Flash без альтернатив (т.е. таким образом, что если flash нет, то функционал недоступен) идут нах.
Альтернатива в виде ввода формулы просто в текстовом виде проста в реализации, поэтому вполне можно поддерживать два варианта редактора - plain text editor и WYSIWYG редактор на flash
 
Хотя бы потому, что у меня на лаптопе Win2003, под который флеша нет.
Неверное утверждение. Вот у меня последние два с половиной года тоже стоит Win2003, и flash есть.
 
Зачем тут флеш?
Если дать возможность вводить формулу в визуальной форме (как Maple 10 в новом интерфейсе, или в MathCAD в добавок к этому добавить возможность нормального редактора самого текста, это будет удобно. Хотя, разумеется, это не задача для одного человека и не задача для одного случая применения.

Dasar

> WYSIWYG редактор на flash
совсем непонятно, где ты возьмешь "промышленных" разработчиков на Flash-е.

ava3443


Вот у меня последние два с половиной года тоже стоит Win2003, и flash есть.
И откуда его взять? Тот, который ставится с http://www.macromedia.com/go/getflashplayer не работает ни в Firefox 1.0.7, ни в IE.

File name: NPSWF32.dll
Shockwave Flash 8.0 r22

Если дать возможность вводить формулу в визуальной форме (как Maple 10 в новом интерфейсе, или в MathCAD)
Понял.
Есть мнение, что вводить формулы в визуальном виде неудобно - спроси у любого пользователя TeX/LaTeX
Сомневаюсь, что за разумное время можно сделать визуальный ввод лучше, чем сделала Microsoft (Equation Editor). А то, что сделала Microsoft - просто не удобно.
в добавок к этому добавить возможность нормального редактора самого текста, это будет удобно.
А вот тут флеш совсем не нужен: это давно сделано на ECMAScript и стандартными средствами браузеров. В качестве примера можно посмотреть на редактор писем в http://www.zimbra.com/products/hosted_demo.php

ava3443

совсем непонятно, где ты возьмешь "промышленных" разработчиков на Flash-е.
+1

Dasar

> Сомневаюсь, что за разумное время можно сделать визуальный ввод лучше, чем сделала Microsoft (Equation Editor). А то, что сделала Microsoft - просто не удобно.
для Microsoft это непрофильная деятельность - поэтому ориентироваться в данном случае на Microsoft не стоит.
визуальный ввод сделать лучше можно, что-нибудь на подобии Intellisence и smart тегов.
т.е. например взять за основу синтактсис Tex-а, далее на лету, заменять вводимые комбинации символов на их реальное значение.
тут главное - понять как для пользователя можно упростить переход от начального освоения к продвинутому использованию.

Helga87

В России не отвечу, но в мире они есть. В доказательство своих слов приведу пример Macromedia Flex 2 (сейчас есть в alpha версии, бета версия через месяц, релиз через полгода). Это IDE + Framework + "промышленный" язык ActionScript 3 (причем в названии Script остался только по доброй памяти, язык полностью типизирован, является полноценным ОО языком, да и вообще весьма похож на Java). Все это дело компилится во flash. Целью всей системы является написание корпоративных приложений, работающих в браузере (еще одна инкарнация идеи Java-апплетов, но на основе платформы, которая уже распространена).
На системе программировать будут как раз "промышленные" программисты на flash.

Helga87

И откуда его взять? Тот, который ставится с http://www.macromedia.com/go/getflashplayer не работает ни в Firefox 1.0.7, ни в IE.
А ты как устанавливаешь?

ava3443

Целью всей системы является написание корпоративных приложений, работающих в браузере
Учавствуем сейчас в тендере на написание "большой системы". Львиная доля работы - рабочие места в виде тонких клиентов для уже существующей платёжной системы. В требованиях чётко прописано, что кроме стандартного браузера можно рассчитывать ещё на Sun JRE + java plugin, и ни на что больше. Так что тут flash вместе с flex в пролёте

ava3443

А ты как устанавливаешь?
Скачиваю и запускаю install_flash_player.exe, указываю U.S. English и нажимаю "OK".

Helga87

Скачиваю и запускаю install_flash_player.exe, указываю U.S. English и нажимаю "OK".
Администраторские права у браузера при установке есть? Что пишет после установки? Какие ошибки выдает?

ava3443

Администраторские права у браузера при установке есть?
У пользователя из-под которого ставлю - есть
Что пишет после установки?
Копирует файлы, прогресс-бар доходит до конца и инсталлятор молча закрывается
Какие ошибки выдает?
Никаких. Ни инсталлятор, ни Firefox. Firefox нормально показывает "Shockwave Flash" в about:plugins, но сами флеши совсем не показывает.

Helga87

Учавствуем сейчас в тендере на написание "большой системы". Львиная доля работы - рабочие места в виде тонких клиентов для уже существующей платёжной системы. В требованиях чётко прописано, что кроме стандартного браузера можно рассчитывать ещё на Sun JRE + java plugin, и ни на что больше. Так что тут flash вместе с flex в пролёте
Ну, вот если бы было прописано, что кроме стандартного браузера можно расчитывать только на Flash plugin, то flex подошел бы. Согласись, что нет принципиальной разницы, что устанавливать: JRE + java plugin или flash plugin.

Helga87

Сложно сказать, что у тебя за проблемы. На всякий случай можешь попробовать воспользоваться online-установкой ( web-страница ). Если ничего не получится, значит что-то делаешь не так (в этом тогда вина macromedia, т.к. в процедуре установки не должно быть неочевидностей либо ось уже "мертвая".

Dasar

> В доказательство своих слов приведу пример Macromedia Flex 2 (сейчас есть в alpha версии, бета версия через месяц, релиз через полгода). Это IDE + Framework + "промышленный" язык ActionScript 3 (причем в названии Script остался только по доброй памяти, язык полностью типизирован, является полноценным ОО языком, да и вообще весьма похож на Java).
и все это написано на Flash-е?
я могу назвать сотню языков - для которых есть среды разработки: например, Lisp, ML, Оберон, SmallTalk и т.д.
вот только все эти среды разработки очень слабо способствуют появлению "промышленных" разработчиков.
ps
причем если все стараются, наоборот, приблизить к друг другу по используемым средствам БД <-> сервер <-> клиент, то ты, наоборот, предлагаешь сделать еще один дополнительную изолированную часть.
pps
Одно дело поддерживать на клиенте .net-ный или java-модуль - там более менее уже понятны все возможности и подводные камни по взаимодействую, другое дело - поддерживать новую вещь в себе - ради призрачного преимущества в повсеместной инсталляции.

Helga87

и все это написано на Flash-е?
Нет, и мне пока неизвестны серьезные приложения, написанные на нем. Максимум, чего я видел - rich клиент для системы управления call center-ами ip-телефонии и такой же клиент для mmorpg-игры (Destiny Sphere и аналоги).
Однако сейчас в него активно добавляют возможности для работы с сервером, бд, взаимодействия с устройствами на клиенте (web camera, microphone, etc централизовано создается новый framework, нацеленный именно на написание корпоративных приложений.
Поэтому, Macromedia надеется, что "все еще будет".
причем если все стараются, наоборот, приблизить к друг другу по используемым средствам БД <-> сервер <-> клиент, то ты, наоборот, предлагаешь сделать еще один дополнительную изолированную часть.
Да, flex заведомо проигрывает по этому критерию java-е. Он сможет выиграть только если:
- предоставит разработчикам инструменты, которые нацелены на быстрое создание богатого клиента, возьмет свое за счет того, что разрабатывается для куда более узкой цели, нежели java.
- возможность удобного взаимодействия с серверной части, независимо от того, на каком языке она написана (сейчас есть необходимый минимум: возможность делать GET/POST запросы, вызывать веб сервисы, обмениваться xml-ками по сокету в обе стороны
- возможность интегрироваться с разработкой серверной части на уровне IDE, в частности, хотелось бы уметь отлаживать одновременно клиентскую и серверную части (видимо, в ближайшее время будет только частичное решение - IDE для flex 2 является плагином для Eclipse).
Плюс, благодаря уже имеющимся возможностям работы с графикой, при приложении тех же усилий, приложения на flex могут выглядеть более красиво. Это не может быть определяющим преимуществом при разработки корпоративного софта, но при прочих равных почему бы и нет.

durka82

промышленных" разработчиков
Интересно, что ты вкладываешь в это понятие?

durka82

Так что тут flash вместе с flex в пролёте
А это всего лишь определяется позиционированием технологии.
Сегодня Flash не позиционируют как технологию для бизнесприменения, вот про нее и "не знают"
А с успехом(или с рекламой ) того же flex-а ситуация может и измениться.
А так понятно:
Кто участвовал в описании требований для тендера - кто-то, кто слышал, что для подобных систем используют Sun JRE + java plugin.
А мб все еще банальнее - есть у них человек, который рюхает только это - так зачем тратить деньги на найм кого-то еще?..
Короче, лидируют не обязательно лучшие технологии, но самые раскрученные
Наверное кого-то это даже устраивает - выучил один раз j2ee - и можно не напрягаясь плыть по течению...

Dasar

> Интересно, что ты вкладываешь в это понятие?
например:
это люди, готовые делать и отвечать за сделанное.
люди готовые делать, в первую очередь, те задачи, которые нужны, а не те, которые интересны.

durka82

Firefox нормально показывает "Shockwave Flash" в about:plugins, но сами флеши совсем не показывает.
У тебя точно скрипты не отрублены?

durka82

И по-твоему в России таких нет?
Или они не могут освоить flash?
Пройдусь по пунктам:
1.
отвечать за сделанное
Это правильно, без этого лучше и не браться.
2.
люди готовые делать, в первую очередь, те задачи, которые нужны, а не те, которые интересны.
Во-первых, это в большой степени вопрос мотивации. А если никто внятно не может объяснить, нафига это надо, но тем не менее говорят, что надо - втопку такую работу.
Во-вторых, если разработчиков несколько (а если он один, то какая к черту промышленная разработка?! часто можно распределить разработчиков так, чтобы им было интересно
В-третьих, в первый раз всегда интересно, а нафига делать повторно то, что уже сделано - надо стремиться к 100% повторному использованию кода

Dasar

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

Ivan8209

> надо стремиться к 100% повторному использованию кода
Если б именно так и делали, ты бы писал на фортране.
---
...Я работаю антинаучным аферистом...

Dasar

> Во-вторых, если разработчиков несколько (а если он один, то какая к черту промышленная разработка?! часто можно распределить разработчиков так, чтобы им было интересно
> В-третьих, в первый раз всегда интересно, а нафига делать повторно то, что уже сделано - надо стремиться к 100% повторному использованию кода
GUI - он очень сильно рутинный, и пока очень плохо повторно используется, а в каждом проекте - его дофига, и все так и норовят потребовать изменение этого GUI-я туда-сюда.

Dasar

> А если никто внятно не может объяснить, нафига это надо, но тем не менее говорят, что надо - втопку такую работу.
потому что за это заплатили деньги - это достаточный уровень мотивации или нет?

durka82

готового сознательно заниматься всю жизнь такой узкой нишей.
Клиент-сервер с нетонким клиентом - это уже узкая ниша?
Занимаются же как-то люди j2ee достаточно долго - знаю немало вполне адекватных людей.
соответственно народ будет ломиться на эту должность ради бонусов, а не ради профессионального владения.
А это уже означает, что сама система гнилая.
Или просто кто-то плохо разбирается в людях...

durka82

Если б именно так и делали, ты бы писал на фортране.
Ты будешь смеяться, но я действительно пишу на фортране (это примерно четверть моей текущей работы)
И вообще, ты несколько путаешь.
Когда появляются принципиально новые задачи - всегда появляются новые технологии (так как старые, как правило, затачивались под старые задачи).
Другое дело, когда новая технология использует все достижения старых.
Но сама индустрия разработки ПО фактически еще только складывается + очень много разных задач + нет единого репозитория созданного (а как еще узнать, что этот велосипед уже придумали?)

durka82

GUI - он очень сильно рутинный, и пока очень плохо повторно используется, а в каждом проекте - его дофига, и все так и норовят потребовать изменение этого GUI-я туда-сюда.
Как раз Flash в этом отношении мне и понравился.
В нем достаточно легко достичь повторного использования именно для ГУИ (впрочем для кода тоже).
Мне с опытом работы в несколько месяцев это удавалось примерно на 70-80%

durka82

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

Ivan8209

Убедил.
Если б именно так и делали, я бы писал на фортране.
Последнее мне очень не нравится.
Новое необходимо даже для решения старых задач.
Не всегда известное решение самое дешёвое.
И для успешности нового совершенно не обязательно использовать все
достижения старого.
Я бы не сказал, что разработка ПО как отдельная отрасль всё ещё складывается,
по-моему, она уже сложилась.
То, что нет единого хранения,--- его и не будет.
По крайней мере, в ближайшем необозримом будущем.
---
...Я работаю антинаучным аферистом...

kruzer25

WYSIWYG редактор на flash
Ты пробовал писать такое?
Кстати, интересно, при использовании isEditable <div>, будет ли работать MathML? Хотя, не уверен, поддерживается ли isEditable чем-то кроме ИЕ...

Helga87

Ты пробовал писать такое?
Правильный ответ: видел такое. Это был редактор rtf.

durka82

Это был редактор rtf.
На флэше?
WYSIWYG?

durka82

Круто, спасибо
Только похоже пока единственный способ сохранения - перевод в html и через буфер.
Непонятно, кстати, почему они так же не выводят содержимое rtf-а - это же текст.
Или это таки не rtf, а html-like редактор?..

Helga87

Или это таки не rtf, а html-like редактор?..
В чем разница? Мб я неправильно называю вещи именами, но я имел ввиду именно тот WYSIWYG редактор текста.

maggi14

наверно, в треде уже об этом читали, но разве нельзя использовать MathML?

Ivan8209

Нельзя.
---
...Я работаю антинаучным аферистом...

kruzer25

В чем разница?
В том, что html-редактор WYSIWYG пишется безо всякого флэша, в один тэг

Helga87

что, и картинки туда вставлять можно будет?

kruzer25

Конечно

durka82

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

Helga87

покажи

kruzer25

Например, визуальный редактор этого форума.
Правда, сам форум большинство тэгов не пропеустит - так что попробуй, например, market.yandex.ru

Helga87

ты в курсе, что тут совсем не WYSIWYG редактор?

kruzer25

Тут - это ты про форум?
Я-то в курсе, просто ты, видимо, не в курсе - почему

Helga87

Тогда почему ты его приводишь в пример?

kruzer25

Возможно, ты не понял.
Тут - не WYSIWYG, потому что самим форумом ради безопасности режется куча тэгов.
Форуму при создании поста приходит - именно то, что ты видел на своём экране... а то, что далее с этим делается перед помещением в БД - уже другой разговор...

bobby

Где WYSIWYG, бля?
Покажи уже, задолбал.

Helga87

Возможно, ты не понял
Да, не понял. Не понял, что ты понимаешь под WYSIWYG редактором. Лично я и все остальные люди под этим понимают редактор, в котором ты сразу при наборе видишь то, что получится в результате. Если ты под этим подразумеваешь возможность предпросмотра, то это, разумеется, совсем не WYSIWYG.

kruzer25

<script language="Javascript"> function init(obj) { obj.contentEditable=true; }; </script>
<div id="editor" onLoad="init(this)"></div>

Это я прямо сейчас вытащил из кода форума

kruzer25

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

bobby

во, круто

Helga87

Согласен, что это WYSIWYG.
Но, скажи-ка, почему это не работает в Опере? Flash редактор-то работает почему-то.

kruzer25

Но, скажи-ка, почему это не работает в Опере?
Потому что опера это не поддерживает.
Кстати, на этом форуме есть код и для не-ие - ты пробовал мой код, или то, что на форуме?
В любом случае, подумай, стоит ли тратить уйму ресурсов для того, чтобы получить НЕЧТО, что даст возможность использовать какую-то функциональность ещё двум процентам пользователей. Стоит ли игра свеч.

Helga87

Если писать самому - не стоит. Если купить готовый компонент и тем самым избавить себя от геморроя - несомненно стоит.

Helga87

Пробовал то, что на форуме разумеется. "Твой код" - это что?

kruzer25

Это те две строчки, которые я вырезал из этого форума

Helga87

Молодец! Что я с ними должен сделать?

kruzer25

Да в общем-то, ничего

Helga87

Ok, я так и сделал

kruzer25

Я запостил те две строчки, чтобы было совсем понятно, что я имею в виду.
Конечно, это очень обрезанный вариант нормального кода.
В частности, тот кусок JS - то, что происходит тут, когда браузер - ИЕ... иначе - выполнется какой-то другой JS-код... я думал, возможно, тыиспользовал ту ie-only обрезанную...

Helga87

Не, я честно зашел на форум из оперы, и у меня не получилось даже поставить курсор в поле ввода. Но вообще, спасибо за пример - я не знал, что у div-а есть такие возможности

durka82

На Лисе, кстати, тоже не работает
А это уже не 2% пользователей.
Короче, я не понимаю, зачем нужно заморачиваться со скриптами и совместимостью, если можно написать полноценное приложения на флэше, которое будет работать на любой платформе, для которой есть версия плагина.
К тому же такое решение будет меньше весить, жрать трафика и быстрее работать, а уж по возможностям развития точно уест это решение
Да еще и красивым его при желании можно будет сделать легче.

durka82

Курсор у меня поставить получилось (под Лисом но при попытке что-то сделать почему-то сразу страница начинала перезагружаться, а видимых изменений не было

Ivan8209

А зачем заморачиваться с флешом, если можно оставить как есть,
а это уже работает на любой платформе, где уже есть гипертекст?
Это жрёт ещё меньше, да и красивым его, при желании, можно сделать ещё легче.
---
...Я работаю антинаучным аферистом...

Helga87

В добрый путь!

kruzer25

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

durka82

я не понимаю
Я тебя не удерживаю.
Я тебе про одно - ты мне про другое
Я хочу понять
Или это и есть ответ на почему:
Просто, по-моему, ты очень сильно недооцениваешь трудоёмкость написания такого редактора на флэше
?
Я вполне себе представляю сложность такой работы - я писал аналогичные вещи.
Я не говорю, что это просто раз плюнуть.
Но и ничего сверхсложного там тоже нет.
Просто по своему опыту создания сайтов на традиционных технологиях и на флэше, я пришел к выводу, что на флэше сделать и поддерживать хороший шаблон гораздо проще - то есть проще достигнуть хорошей повторной используемости.
Поскольку у меня нет штата разработчиков, которые могли бы писать и переписывать это по нескольку раз, если у меня подобная задача возникнет, я пойду по пути наименьшего сопротивления - для меня это флэш.
Оставить комментарий
Имя или ник:
Комментарий: