Привет, хабр.
Вопрос о нативном отображении формул на хабре есть достаточно давно (сам я не так давно писал в техподдержку с этим вопросом, получил ответ, что в планах есть, но пока всё очень неопределённо), и сегодня (а, точнее, уже вчера) был поднят в комментариях к "Магия тензорной алгебры: Перезагрузка". А если заглянуть в хаб по LaTeX, то сразу же 2 последние статьи — на тему оформления формул в статьях хабра.
Самое интересное, что в принципе подключить поддержку TeX / LaTeX к любому сайту — дело пары минут и пары строк кода: достаточно подключить MathJax, ставшую уже почти что стандартной в задаче отображения формул в браузере.
Традиционно для формул на хабре используются картинки, однако всё вышесказанное наводит на вполне определённую мысль, что есть и другой вид костылей. С одной стороны, менее удобный, с другой — более.
…
Вот он:
v=document.createElement('script');v.type='text/x-mathjax-config';v.textContent="MathJax.Hub.Config({tex2jax:{inlineMath:[['$tex','$']],displayMath:[['$$tex','$$']]},asciimath2jax:{delimiters:[['$asc','$']]}});";s=document.createElement('script');s.src='//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML&locale=ru';document.head.appendChild(v);document.head.appendChild(s);
Ctrl+C, F12 и Ctrl+V.При желании можно использовать как букмарклет, добавив в начале `javascript:`
Аудитория хабра — не те люди, которых можно испугать консолью браузера или букмарклетом, правда ведь?
Инлайновый TeX вставляется в
$tex ...$
, отдельным абзацем — в $$tex ... $$
, и помимо этого есть поддержка AsciiMath в $asc ... $
.Ну и живые примеры конечно же:
$$tex \frac{1}{\pi} = \frac{2 \sqrt 2}{9801} \sum_{k=0}^{\infty} \frac{(4k)!(1103 + 26390k)}{(k!)^4 396^{4k}} $$
Или вот инлайновая формула: $tex e^{ \frac{d}{dt} } = 1 + \frac{1}{1!}\; \frac{d}{dt} + \frac{1}{2!}\;\frac{d^2}{dt^2} + \frac{1}{3!}\;\frac{d^3}{dt^3} + \cdots $.
Минусы всего этого не менее очевидны, и, по правде говоря, заставляют сомневаться в жизнеспособности идеи, но, как минимум, как эксперимент — интересно, имхо. Что думаете?