答案1
如果你通过检查 pandoc 的 LaTeX 模板pandoc -D latex
,你会看到
\hypersetup{breaklinks=true,
bookmarks=true,
pdfauthor={$author-meta$},
pdftitle={$title-meta$},
colorlinks=true,
citecolor=$if(citecolor)$$citecolor$$else$blue$endif$,
urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
pdfborder={0 0 0}
$if(hidelinks)$,hidelinks,$endif$}
和
$if(toc)$
{
\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$}
\setcounter{tocdepth}{$toc-depth$}
\tableofcontents
}
$endif$
到 之间的所有内容$
都由 pandoc 预处理,大部分都扩展为相应的变量(除了 s$if...$
等),这意味着变量citecolor
、urlcolor
和linkcolor
(toccolor
仅限目录中的 linkcolor)被使用。因此,在您的例子中,您必须输入
linkcolor: blue
到你的文档中YAML 标头-M|V linkcolor=blue
或提供或之一--metadata|variable=linkcolor:blue
。是否使用M/metadata
或V/variable
取决于您是否只想影响模板(通过V
)或真正设置/替换元数据(通过M
),这也可能影响所使用的任何过滤器或(尽管在本例中不是)在结果文档中输出。
关于unicode=true
,该模板有
\ifxetex
\usepackage[setpagesize=false, % page size defined by xetex
unicode=false, % unicode breaks when used with xetex
xetex]{hyperref}
\else
\usepackage[unicode=true]{hyperref}
\fi
在其中,即 unicode 设置为 true,除非您使用 XeLaTeX 进行编译。如果您不想要这样,您必须修改模板本身或生成的 TeX 文件。