问题xr
:为了引用其他独立的 LyX 文档中的项目,使用 LyX 中的包需要哪些步骤?
已采取的措施:
- 该
tools
包(包含该xr
包)已安装在 MikTeX 中。 - 该
xr
包已在引用文档中使用(通过添加\usepackage{xr}
到引用文档的序言中)。 - 已在引用文档中设置指向引用文档的指针(通过添加
\externaldocument{referenced.lyx}
到引用文档的序言中)。 - 所引用文档中的标签已在使用该标签的引用文档中被交叉引用
\ref
。
观察到的(不良)行为:LyX 编辑器中,该引用显示为“BROKEN”。PDF 输出中,应显示引用编号的位置显示为“??”。
相关链接:
使用的软件:Windows 7 上的 LyX + MiKTeX + BibTeX
我的 Lyx/LaTeX 熟练程度: 初学者+
答案1
过去几天我一直在尝试使用xr
LyX ,这篇文章及其引用的链接几乎是我能找到的所有参考资料。由于目前的答案没有完全解释 LyX 中发生了什么,我将给出使用LyX 的方法(或):xcite
xr
xcite
放
\usepackage{xr} \externaldocument{referenced}
进入参考文档 (我将称之为
referencing.lyx
) 的 Document->Settings 中的 LaTeX 前言中。构建参考文档以获取
referenced.aux
。您可以执行文件->导出来导出
referenced.tex
并运行latex
以生成referenced.aux
,也可以使用查看命令在 LyX 中正常构建文档。如果使用查看命令,则需要找到运行 latex 的 LyX 临时目录。此目录应为 LyXTemporary directory
首选项的路径部分下列出的子目录。LyX 子目录(可能有多个,具体取决于您在会话期间打开和渲染的文档数量)的名称以 开头,lyx_tmpdir
并包含名称以 开头的子目录lyx_tmpbuf
。其中一个lyx_tmpbuf
目录应包含referenced.aux
(如果您启动新的 LyX 会话并查看referenced.lyx
,应该很容易找到,因为应该没有太多额外的 LyX 目录)。(Itai,LyX 的临时目录通常位于系统临时目录中,该目录不会显示在典型的文件搜索中,所以这可能是您找不到任何.aux
文件的原因)。一旦拥有它
referenced.aux
,只需将其保存在与 相同的目录中referencing.lyx
,LyX 在渲染时就会找到它referencing.pdf
。
其他使用说明:
LyX 本身不支持
xr
或xcite
。最初, 中的标签referenced.lyx
不会作为选项出现在 LyX 的交叉引用对话框中。要引用 中的项目(referenced.lyx
例如 )referenced_label1
,您可以执行“插入->TeX 代码”并\ref{referenced_label1}
手动输入,也可以保持referenced.lyx
打开状态,右键单击要引用的标签并选择“复制为引用”,然后将其粘贴到referencing.lyx
要引用的位置。由于 LyX 不支持
xr
,粘贴的标签将在 LyX 中显示,BROKEN:
标签前面带有前缀。但是,它们仍应在生成的 pdf 中正确呈现。BROKEN:
前缀只是意味着 LyX 找不到 中定义的标签referencing.lyx
。解决此问题的一种方法是将其referencing.lyx
作为子文档(插入 -> 文件 -> 子文档)放在 LyX 注释中。然后它的标签将显示在 LyX 中的交叉引用对话框中,但由于包含在 LyX 注释中,因此它不会在 .pdf 中呈现。粘贴的标签将出现在 LyX 的交叉引用对话框中(作为
BROKEN:
引用)。但不要尝试从那里引用它们,因为最终你会得到一个引用的引用。使用
xcite
,如果您有一个单独的.bib
文件referenced.lyx
(称为referenced.bib
),您可以将其添加到 的参考书目referenced.bib
中referencing.lyx
并正常引用项目(而不是从 中复制和粘贴参考文献referenced.lyx
)。然后,当您想要呈现 时referencing.pdf
,将其从参考书目中删除referenced.bib
。这应该会破坏 中的所有引用referencing.lyx
,但仍应能被 找到xcite
。在搜索如何
xr
与 LyX 一起使用时,我看到 LyX 中提到了组合文档选项,该选项允许它将同一个临时目录用于两个 LyX 文件(在这种情况下,referenced.aux
文件可以使用,referencing.lyx
而不必像上面描述的那样将其放在工作目录中)。据我所知,此功能在 LyX 2.0 之前已被删除,不再是一个选项。
答案2
的文档xr
告诉你如何编写
\externaldocument{referenced}
没有扩展,因为它需要查看referenced.aux
而不是referenced.tex
(或.lyx
文件)。显然,.aux
编译后的文件referenced.tex
必须存在才能被查阅(与主文档位于同一文件夹中,或者在 LaTeX 可以找到的其他地方)。