7

tl;dr: tumblr 对 markdown 和 HTML 代码进行了更改。如果您写入&lt;降价代码并重新加载它,它将被替换<并破坏。但是,如果您使用 HTML 编辑器并放置类似的东西&,您可能需要使用 mathjax,它将被替换&amp;并最终破坏您的表格/矩阵。

如何避免这种情况?


我开始使用 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。但是,问题是如果我使用 tumblr 的 HTML 编辑器并输入以下内容:

$$
\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 将始终&&amp;which 替换不起作用,并导致矩阵呈现不符合我的预期:

在此处输入图像描述

是否有可能让语法突出显示和 mathjax 工作?

另一个问题似乎是这样的:

$$ 
\begin{bmatrix}a & b \\\\\ c & d\end{bmatrix}
$$

如果我将它用于降价编辑器,则矩阵会正确呈现。但是,切换到 HTML 编辑器并在那里编辑和保存更改将删除一些反斜杠并留下\\\然后再次破坏矩阵。

另外,如果我写

<pre><code>
for(x = 0; x &lt; myString.length; x++) {
    // Do stuff
}
</code></pre>

在降价中,保存并重新加载它..&lt;被替换为<. 再次保存它会破坏降价,因为它会<被解释为另一个 HTML 标记的左括号。

我可以以某种方式告诉 tumblr要这样做吗?

4

1 回答 1

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 本身中进行编辑,因为编辑器会继续修改你的文本,并且没有真正的方法可以阻止这种情况。你可以让它改回来(就像上面的标题在某种程度上做的那样),但在实际的编辑器中它仍然会被搞砸。

我建议使用带有自定义语言特定语法突出显示的外部可嵌入编辑器。我个人最喜欢的是hilite.me。我已经在 Tumblr 上对此进行了测试,并且可以确认它有效。

MathJax的替代品可能在 Tumblr 上效果更好。但这不是你的问题。

我认为您可能会发现自己受到 Tumblr 文本编辑器的限制,特别是如果您打算在模式(Markdown、HTML、RichText)之间切换。你可以在这里找到更多讨论。我最好的猜测是,Tumblr 出于 LangSec 的原因从用户手中夺走了控制权(Blackhat 2016 的主题演讲部分是关于 MySpace 显然是如何通过 LangSec 问题获得 pwnd 的,因为它们没有在帖子中解析或剥离 html),我认为在某一点上,您只是碰到了无法克服的墙。由于我是一个刻薄的互联网人,我建议您查看对编码员更好的平台,例如 SVBTL。或者像我一样使用 GitHub 页面并建立自己的网站(链接到网站)。

我绝对建议考虑 MathJax 的替代品。在这里查看更多。您也许可以从 Mathematica 嵌入。在最坏的情况下,您可以使用MathURL

抱歉,我没有适合您的解决方案。我真的不认为目前有一个决定性的解决方案。Tumblr 中的数学编辑似乎本质上被破坏了,你可以解决不同的特定问题,但当你切换编辑器时它仍然会自行破坏。祝你好运。

于 2016-11-12T19:13:33.567 回答