Как сказать Tumblr прекратить вносить изменения в уценку и / или HTML-код?
tl; dr: tumblr вносит изменения в уценку и HTML-код. Если ты пишешь <
в код уценки и перезагрузите его, он будет заменен на <
и ломать вещи. Однако если вы используете редактор HTML и поместите что-то вроде &
, который вам может понадобиться с mathjax, он будет заменен на &
и в конце концов сломать ваши таблицы / матрицы.
Как этого можно избежать?
Я начинаю использовать Tumblr, и я добавил
<!-- Syntax highlighting -->
<link rel="stylesheet" href="http://yandex.st/highlightjs/7.2/styles/default.min.css">
<script src="http://yandex.st/highlightjs/7.2/highlight.min.js">
</script>
<script>
hljs.initHighlightingOnLoad();
</script>
<!-- Mathjax LaTeX Mode -->
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
чтобы иметь возможность использовать Mathjax и Highlightjs. Однако проблема в том, что я использую HTML-редактор tumblr и ввожу это:
$$
\left[
\begin{array}{cc|c}
1 & 2 & 3<br>
4 & 5 & 6
\end{array}
\right]
$$
</p><pre><code>public class Main {
public static void main(String[] args) {
System.out.println(”Hello World!”);
}
}
</code></pre></p>
Tumblr всегда заменит &
с &
который не работает и приводит к тому, что матрица отображается не так, как я планировал:
Возможно ли как-то заставить работать подсветку синтаксиса и mathjax?
Другая проблема, кажется, что-то вроде:
$$
\begin{bmatrix}a & b \\\\\ c & d\end{bmatrix}
$$
Если я использую это для редактора уценки, матрица будет правильно отображена. Однако переключение в редактор HTML и редактирование и сохранение изменений там удалит некоторые обратные слеши и оставит только \\\
который затем ломает матрицу.
Также если я напишу
<pre><code>
for(x = 0; x < myString.length; x++) {
// Do stuff
}
</code></pre>
в уценке, сохранить его и перезагрузить.. <
заменяется <
, Сохранение этого снова сломает уценку, потому что <
затем интерпретируется как открывающая скобка для другого тега HTML.
Могу ли я как-то сказать Tumblr не делать этого?
1 ответ
В твоей голове (прямо перед </head>
), положи это:
<script type="text/x-mathjax-config">
MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']],
displayMath: [['\\[','\\]'], ['$$','$$']]}});
</script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
Тогда вместо \\
, записывать \\\
, Например:
$$
\left[
\begin{array}{cc|c}
1 & 2 & 3
\\\4 & 5 & 6
\end{array}
\right]
$$
В конечном счете, я думаю, что вы должны прекратить редактирование в самом Tumblr, так как редактор будет продолжать изменять ваш текст, и нет никакого реального способа остановить это. Вы могли бы заставить его изменить его обратно (как в заголовке выше в некоторой степени), но в реальном редакторе он все равно будет испорчен.
Я бы порекомендовал использовать внешний встраиваемый редактор с пользовательской подсветкой синтаксиса для конкретного языка. Мой личный фаворит - http://hilite.me/. Я проверил это на Tumblr и могу подтвердить, что это работает.
Есть альтернативы MathJax, которые могут лучше работать на Tumblr. Но это был не твой вопрос.
Я думаю, что вы, вероятно, окажетесь очень ограниченными текстовым редактором Tumblr, особенно если вы планируете переключаться между режимами (Markdown, HTML, RichText). Вы можете найти больше обсуждения здесь. Мое предположение состоит в том, что Tumblr отнимает у пользователя контроль по причинам LangSec (основной доклад на Blackhat 2016 был частично о том, как, по-видимому, MySpace получил pwnd из-за проблем LangSec, потому что они не анализировали и не удаляли html в сообщениях), и я думаю в определенный момент вы просто врезаетесь в стену, которую невозможно преодолеть. Поскольку я заядлый интернет-человек, я бы порекомендовал вам проверить платформы, которые лучше для программистов, такие как SVBTL. Или просто используйте страницы GitHub и создайте свой собственный сайт, как я ( ссылка на сайт).
Я бы абсолютно рекомендовал рассмотреть альтернативы MathJax. Подробнее здесь. Вы можете быть в состоянии вставлять из Mathematica. В худшем случае вы можете использовать MathURL.
Извините, у меня нет решения для вас. Я действительно не думаю, что есть окончательное решение в данный момент. Редактирование математики в Tumblr, по-видимому, неразрывно связано, и вы можете разобраться с различными конкретными проблемами, но оно все равно прекратится, когда вы переключите редакторы. Удачи.