Jupyter Notebook中能否让Markdown/LaTeX的标签可点击跳转?
在Jupyter Notebook里,要让LaTeX align环境的\tag内容变成可点击的锚点链接,得用MathJax支持的特殊语法——普通HTML或原生LaTeX命令在\tag里会被当成纯文本渲染,试试这个可行方案:
第一步:给目标章节加锚点
先在某个Markdown单元格里,给你想跳转的章节定义锚点ID,比如:
## Definition of Addition {#def_addition} 这里写下加法的定义内容...
{#def_addition}就是我们要跳转的锚点,Markdown会自动把它转换成HTML的ID属性。
第二步:在公式里用MathJax的\href命令
把原来的\tag改成\href{锚点}{显示文本}的形式,具体写法如下:
\begin{align} 0 + S(a) &= S(0 + a) \tag{\href{#def_addition}{by definition of addition}} \\ &= S(a) \tag{\href{#def_addition}{by induction hypothesis}} \end{align}
为啥之前的方法没用?
Jupyter用MathJax渲染数学公式,\tag内部默认只解析LaTeX语法,直接写HTML的<a>标签或者原生LaTeX的\url都会被转义成普通文本。而MathJax内置了\href扩展命令,专门用来在数学环境里生成超链接,Jupyter默认已经开启了这个扩展,所以能正常渲染成可点击的链接。
小提醒
- 锚点ID要和
\href里的#def_addition完全匹配,区分大小写 - 不管目标标题是几级(#/##/###),链接里只需要写
#锚点ID就行 - 确保所有单元格都运行过,锚点和公式都完成渲染后再测试跳转
内容的提问来源于stack exchange,提问作者user525966
相关产品推荐
相关产品推荐

