我的 github 帐户上有代码片段,我想通过以下方式将其中的代码直接导入到我的 LaTeX 文档中:
\importtext{https://gist.github.com/xxxx}
这可能吗?我到处都找过了,就是找不到。
答案1
LaTeX 本身没有下载或任何其他互联网功能,因此您无法直接导入网站等。但是,您可以下载文本并将其导入\input{<localfile>}
到您的文档中。但是,如果它是源代码,则需要使用逐字包,例如listings
。有了它,您可以使用\lstinputlisting[<options>]{<filename>}
。在选项中,您还可以指定language=..
获取语法突出显示。
理论上,可以编写一个导入宏来为您完成所有操作,即下载源代码并正确包含它,但我认为还没有人编写过这样的宏。这需要在 LaTeX 中调用外部软件,这只有在使用编译器选项时才有可能-shell-escape
。
答案2
正如 Joseph 所说,使用 ConTeXt 很容易。宏\locfilename
指向参数的 Web 资源的本地(缓存)版本,您可以将其用作其他所有本地文件。
\locfilename {http://www.example.com/sometexfile.tex}
既然你想打印外部文本,您可以使用ConTeXt vim 模块,它内置了此功能。使用:
\usemodule [vim]
\definevimtyping [LATEX] [syntax=latex]
\starttext
\typeLATEXfile
{https://raw.github.com/godbyk/tufte-latex/master/tufte-handout.cls}
\stoptext
这将生成一个包含该类源代码的页面tufte-handout
。此机制适用于多种协议,包括https
。
笔记:在 TeX 中,URL 有时很乱。当你遇到错误的 catcode 字符时,你可以使用\asciimode
,它会将除反斜杠之外的所有内容转换为字符。