我正在使用 Org-mode 制作 Beamer 演示文稿。我不知道如何最好地包含 Latex 代码片段。据我所知,有两种方法可以向 Org-mode 发出信号,让其将文本解释为 LaTeX 代码。
第一种是将 LaTeX 代码夹在中间:
#+begin_latex
.....[LateX code here]....
#+end_latex
另一种方法是让行以此开头#+LaTeX
:
#+LaTeX: .....[LateX code here]....
这两种方法的问题在于,它们要求 LaTeX 代码真正位于与“常规 org-mode”代码/文本分开的单独一行(或多行)。但如果我想要一个项目符号后跟 LaTeX 代码,比如 , \url{}
这种方法就行不通,因为它必须位于以下行:
* Heading one
** some point
***
#+LaTeX: \url{http://www.gnu.org}
*** something else
***
#+begin_latex
\url{http://tex.stackexchange.com}
#+end_latex
不幸的是,org-mode 似乎不能自动解释\url{}
没有 LaTeX 标签的情况。如果我只有:
* Heading one
** \url{http://www.hello-world.net}
然后 PDF 输出如下所示:
* Heading one
** [[http://www.hello-world.net][http://www.hello-world.net]]
那么,有没有更好的方法来处理 LaTeX 片段?更具体地说,有没有一些以合理方式处理 URL 的好方法?(这里的合理意味着它们以某种方式(颜色或字体)脱颖而出并且是“可点击的”。)
编辑:我认为 mvarela 的回答中的第一个建议接近我想要的,因为它在输出中实际上“看起来像一个 url”。这里建议的另一种可能性以及 Seamus 的建议确实是 pdf 输出中的可点击 url,但格式为常规文本。
因此:
*** \murl{http}{www.google.com}
*** [[http://www.google.com][google.com]]
*** http://www.google.com
*** <http://google.com>
输出为:
组织输出 http://gobblin.se/media/media_entries/660/shot-2012-08-09_10-35-36.jpg
只有第一个在视觉上与其他文本区分开来。
答案1
这听起来有些黑客,但是它可以完成工作:
#+LaTeX_HEADER: \newcommand{\murl}[2]{\url{#1://#2}}
\murl{http}{www.google.com}
您还可以在文件中仅使用 org 格式的 URL .org
,然后将其转换为正确的 TeX:
[[http://www.google.com][google.com]]
C-c C-l如果您不想输入,您可以使用 插入这样的链接。