Узнав, насколько этот костыль мощный (вплоть до рисования коммутативных диаграмм), сложно продолжить называть его костылём.
И да, неравенство JavaScript != сервер неверное, вон KaTeX умеет рендерить внутри Node.
Может, проще. Согласен, грузится сильно-сильно быстрее, что некритично, но приятно.
Меня смущает, что я его вижу впервые и не совсем понимаю, как сделать автоматический парсинг выражений в $$… $$ или тому подобных "тегах".
С этим трудно спорить, да и не имеет смысла, вы правы.
Единственное, что замечу: обратная совместимость всё же некоторая есть. TeX традиционно обрамляется знаками $$ с обоих сторон, и все счастливы-довольны. Правда, я, посчитав, что подобное вполне может встретиться в ином контексте, решил заменить на более специфичное $tex и $$tex.
В общем, обратная совместимость полностью зависит от того, какой вариант будет введён. Может быть, будет вообще тег math, тогда да. А, может, и стандартные $$.
Не говоря уже о том, что, если в каждой первой статье не глядя вставлять указанный там код в консоль, рано или поздно можно наткнуться на что-нибудь левое.
Идея нежизнеспособна, можно просто считать её демонстрацией, как легко добавляется поддержка (La)TeX.
Я просто показал ещё один вариант, тоже костыль, чем-то лучше, чем-то хуже. В отличие от картинок, здесь более качественные шрифты (чем во многих местах), всегда можно посмотреть оригинал формулы, есть масштабирование и много других хороших вещей. Минусы сводят их все на нет, увы.
Ну и, если кому-то сильно-сильно понадобятся нативные формулы на хабре (до того, как их поддержку введут), то вот, вариант выше.
Если вы, как и я, понимаете TeX, и для вас формула неплоха и в таком виде: $$tex \frac{1}{\pi} = \frac{2 \sqrt 2}{9801} \sum_{k=0}^{\infty} \frac{(4k)!(1103 + 26390k)}{(k!)^4 396^{4k}} $$, то без проблем, я вас не заставляю.
Ошибаетесь.
Нельзя совершать кроссдоменные AJAX-запросы — да, тут именно вопрос доверенных origin.
А вот скрипты вставлять можно, на этом работают все CDN, а в прошлом основывалась поддержка кроссдоменного AJAX, называемая JSONP (вставляется скрипт, в адресе — параметры, внутри — переменная с ответом).
Подключает библиотеку MathJax, которая пробегается по всей странице, ищет заключённые в $tex тут формула $ (и т.п.) формулы и приводит их в красивый вид.
Выше есть такой фрагмент:
Который после исполнения скрипта превращается в...
Что приятно, работает везде, в том числе и в комментариях, выше комментарий от Psychosynthesis, содержащий скопированный TeX, там точно так же.
"В прошлом году товар xx стоил 20$, а в этом — 30$". Внезапно, строка ", а в этом — 30" превратилась в формулу.
Я просто перестраховался, видел вообще вариант с $latex… $.
Со стандартом не знаком, если честно, так что могу в чём-то ошибаться.
Часть возможностей латеха, если ничего не путаю, MathJax поддерживает — нумерацию формул, например.
Этого достаточно, чтобы MathJax, который уже стандарт де-факто в отображении теха в браузере, подключился, начал радостно искать на странице формулы, заключённые в $$… $$ и превращать их в красивые картинки. А заодно и ASCII-Math в "обратных кавычках" (тех, что на ё, хабр их превращает в тег code), что немного другое.
Вот если говорить о LaTeX, то это сильно сложнее, но вряд ли LaTeX вообще имеет смысл в браузере.
И да, неравенство JavaScript != сервер неверное, вон KaTeX умеет рендерить внутри Node.
А так да, в чём-то вы правы.
Что тут можно сказать кроме упоминания имени автора новости?
Меня смущает, что я его вижу впервые и не совсем понимаю, как сделать автоматический парсинг выражений в $$… $$ или тому подобных "тегах".
Спасибо.
Единственное, что замечу: обратная совместимость всё же некоторая есть. TeX традиционно обрамляется знаками $$ с обоих сторон, и все счастливы-довольны. Правда, я, посчитав, что подобное вполне может встретиться в ином контексте, решил заменить на более специфичное $tex и $$tex.
В общем, обратная совместимость полностью зависит от того, какой вариант будет введён. Может быть, будет вообще тег math, тогда да. А, может, и стандартные $$.
Идея нежизнеспособна, можно просто считать её демонстрацией, как легко добавляется поддержка (La)TeX.
Я просто показал ещё один вариант, тоже костыль, чем-то лучше, чем-то хуже. В отличие от картинок, здесь более качественные шрифты (чем во многих местах), всегда можно посмотреть оригинал формулы, есть масштабирование и много других хороших вещей. Минусы сводят их все на нет, увы.
Ну и, если кому-то сильно-сильно понадобятся нативные формулы на хабре (до того, как их поддержку введут), то вот, вариант выше.
Если вы, как и я, понимаете TeX, и для вас формула неплоха и в таком виде: $$tex \frac{1}{\pi} = \frac{2 \sqrt 2}{9801} \sum_{k=0}^{\infty} \frac{(4k)!(1103 + 26390k)}{(k!)^4 396^{4k}} $$, то без проблем, я вас не заставляю.
Нельзя совершать кроссдоменные AJAX-запросы — да, тут именно вопрос доверенных origin.
А вот скрипты вставлять можно, на этом работают все CDN, а в прошлом основывалась поддержка кроссдоменного AJAX, называемая JSONP (вставляется скрипт, в адресе — параметры, внутри — переменная с ответом).
Подключает библиотеку MathJax, которая пробегается по всей странице, ищет заключённые в
$tex тут формула $(и т.п.) формулы и приводит их в красивый вид.Выше есть такой фрагмент:
Который после исполнения скрипта превращается в...
Что приятно, работает везде, в том числе и в комментариях, выше комментарий от Psychosynthesis, содержащий скопированный TeX, там точно так же.
Там прямо под кодом всё написано:
Я просто перестраховался, видел вообще вариант с $latex… $.
Со стандартом не знаком, если честно, так что могу в чём-то ошибаться.
Часть возможностей латеха, если ничего не путаю, MathJax поддерживает — нумерацию формул, например.
Этого достаточно, чтобы MathJax, который уже стандарт де-факто в отображении теха в браузере, подключился, начал радостно искать на странице формулы, заключённые в $$… $$ и превращать их в красивые картинки. А заодно и ASCII-Math в "обратных кавычках" (тех, что на ё, хабр их превращает в тег code), что немного другое.
Вот если говорить о LaTeX, то это сильно сложнее, но вряд ли LaTeX вообще имеет смысл в браузере.
21 век.