可重写文档:两个简单文件之间的交叉引用



scrible的文档(Racket文档工具)说"[…]文档中的交叉引用总是可以解决的",但下面的文件a.scrbl未能引用文件b.scrbl 中的部分

a.scrbl:

#lang scribble/base
@secref["sectag" #:doc "b.scrbl"]

b.scrbl:

#lang scribble/base
@section[#:tag "sectag"]{A section}

当用scribble --html a.scrbl b.scrbl编译它们时,我得到:

Warning: some cross references may be broken due to undefined tags:
 (part ("/path/to/b.scrbl" "sectag"))

如何从a.scrbl引用b.scrbl中的节?

如果删除#:doc参数,它似乎可以工作。

#lang scribble/base
@secref["sectag"]

如果在两个文档中使用相同的标记,这可能会产生歧义,因此可能需要更改标记名称或使用自己的标记前缀。

我不知道为什么#:doc的相对路径不能如您所期望的那样工作。也许它只用于引用集合安装的文档。

最新更新