MS Windows 中带有词汇表的 latexmk

MS Windows 中带有词汇表的 latexmk

我正在使用 latexmk 并尝试让它成功编译词汇表。我使用了 CTAN 中的脚本(http://ftp.acc.umu.se/mirror/CTAN/support/latexmk/example_rcfiles/glossary_latexmkrc),但在 Windows 上似乎不起作用。以下是错误消息: 在此处输入图片描述

它似乎尝试用作./目录,但在 Windows 中是这样,所以.\我相信这就是它不起作用的原因。

如何修复此问题?

答案1

事实证明,这是 参数中文件名引用的问题makeglossaries。最简单的解决方法是将 中的代码从文档latexmkrc中给出的内容修改为latexmk

add_cus_dep( 'acn', 'acr', 0, 'makeglossaries' );
add_cus_dep( 'glo', 'gls', 0, 'makeglossaries' );
$clean_ext .= " acr acn alg glo gls glg";
sub makeglossaries {
    my ($name, $path) = fileparse( $$Psource );
    return system "makeglossaries", "-d", $path, $name;
}

更好的方法是使用

add_cus_dep( 'acn', 'acr', 0, 'makeglossaries' );
add_cus_dep( 'glo', 'gls', 0, 'makeglossaries' );
$clean_ext .= " acr acn alg glo gls glg";
sub makeglossaries {
    my ($base_name, $path) = fileparse( $_[0] );
    pushd $path;
    my $return = system "makeglossaries", $base_name;
    popd;
    return $return;
}

相关内容