![LaTeX,包文档查找](https://linux22.com/image/252164/LaTeX%EF%BC%8C%E5%8C%85%E6%96%87%E6%A1%A3%E6%9F%A5%E6%89%BE.png)
我在 OS X (10.6 Snow Leopard) 上使用 TeXLive-2011 排版一个简单的 .tex 文件,我正在 Vim 中编辑并尝试学习。我的问题是:我该怎么做...
逐渐了解 TeX 能为我做什么
获取有关如何使用特定命令的详细信息(例如,获取 url{...} 的完整“命令语法”
下面是一个具体且符合上下文的例子:
A. 我通过 Google 搜索发现有一个“url”命令,我如何获取“命令/包列表”?
B. 我使用 TeX Live Utility.app 更新我的“包”,这是“正确”的方法吗?
C. 为了再次了解如何使用“\url{...}”,我只需“Google”一下,就能找到这个地址:
http://www.ctan.org/tex-archive/macros/latex/contrib/url
在一个扩展名为 .sty 的文件中,在注释部分,我发现了一些使用提示:
Usage: Conditions:
\url{ } If the argument contains any "%" or "^^", or ends with
"\", it can't be used in the argument to another command.
The argument must not contain unbalanced braces.
\url| | ...where "|" is any character not used in the argument and not
"{" or a space. The same restrictions as above except that the
argument may contain unbalanced braces.
\urldef\xyz\url{ }
\xyz a defined-url: "\xyz" can be used anywhere, no matter what
characters it contains.
\DeclareUrlCommand\abc{settings}: makes \abc{ } like \url{ }
See further instructions after "\endinput"
我能否以更简单的方式获取这些信息?
仅通过“以某种方式请求 URL 帮助”?这确实是我的问题的关键。我希望有类似“JavaDoc”或“内置帮助系统”的东西,类似于我使用 Eclipse 并安装 JavaDoc jar 并附加源文档时获得的东西。点击即可访问有关包的文档。如果 Eclipse 类比对您来说很陌生,请考虑 Xcode 内置文档系统或甚至出色的 MSDN-to-VS.NET 集成。LaTeX 有类似的东西吗?如果需要,我可以预先生成像使用 Sphinx 和 Python 所做的那样的东西……
答案1
A. 我通过 Google 搜索发现有一个“url”命令,我如何获取“命令/包列表”?
软件包列表如下加拿大运输安全局。但就其本身而言,它并没有多大帮助——包太多了。同样,也没有命令列表,这没有意义,因为实在是太多了。查找包/命令的最简单方法是使用 Google 搜索其领域的一般排版帮助(例如,使用 Google 搜索latex plot
) 并从那里开始。
B. 我使用 TeX Live Utility.app 更新我的“包”,这是“正确”的方法吗?
是的。这是迄今为止最简单、最省事的方法。如果您需要安装尚未通过此界面提供的特定版本的软件包(例如测试版),则需要使用tlmgr
命令行界面反而。
我能否以更简单的方式获取这些信息?
我希望有类似“JavaDoc”或“内置帮助系统”的东西,类似于我使用 Eclipse 并安装 JavaDoc jar 并附加源文档时获得的东西
在命令行上,
texdoc url
通常,每个软件包的文档都可以通过 访问texdoc <packagename>
。大多数软件包都附带 PDF 格式的排版文档。– 顺便说一句,我不知道为什么大多数 LaTeX 初学者指南都没有提到这一点,或者只是间接提到它。这是迄今为止我学到的关于 LaTeX 的最有用的东西。例如,所有核LaTeX 的命令已记录在texdoc source2e
(技术性很强,但很完整)。
事实上,LaTeX 的文档系统更加完整比 JavaDoc 或类似系统更适合。强烈建议软件包编写者练习文字编程即他们不注释/记录他们的代码。相反,他们写了一份文档,包含代码(而不是像 JavaDoc 那样反过来)。这通常意味着包文档是非常全面。如果想看一个极端的例子,可以尝试一下texdoc tikz
(顺便说一下,这是一个很棒的包)——这是一个排版精美的 700 页文档,其中包含多个教程和示例。
答案2
除了文本文档,它能让你快速访问软件包文档,还有一个很棒的工具叫做文本定义. 引用加拿大运输安全局:
(Perl) 脚本显示 (La)TeX 命令序列/宏的定义。各种选项允许选择使用的类和包文件以及其他可能对定义产生影响的内容(前言之前/之后、环境内部等)。
使用方法很简单:发布
texdef --tex latex --package url --source url
给出命令定义的来源
% url.sty, line 194:
\DeclareUrlCommand\url{}
指向 的定义\DeclareUrlCommand
,所以
texdef --tex latex --package url --source DeclareUrlCommand
% url.sty, line 190:
\def\DeclareUrlCommand#1#2{\def#1{\leavevmode\begingroup #2\Url}}
查看作者(Martin Scharrer)宣布了该工具在他的回答中在哪里可以找到命令/环境是如何定义的?。 也可以看看NN 的回答到显示命令的来源。
答案3
在www.ctan.org您可以搜索包按关键字,由层次表征以及文本搜索描述。(但是,这似乎很少用;据我所知,每个人都只是谷歌一下。)