我在词汇表中使用 xindy 时遇到了问题。第一次调用 后pdflatex
,我放弃了makeglossaries mytex
命令行。不幸的是,我得到了错误
“加载:名为 C:\Users\xyzxyz~1\AppData\Local\Temp\vEslm0pNhL 的文件不存在”。
经过一番努力,我发现该文件C:\Users\xyzxyz~1\AppData\Local\Temp\vEslm0pNhL
已由 xindy.pl 正确生成。但是,它无法由 xindy_lisp.exe 加载,后者需要完整路径名,而不是短路径名(DOS 样式),即C:\Users\xyzxyzabcabc\AppData\Local\Temp\vEslm0pNhL
。有人遇到同样的问题吗?我该如何解决?
我在 Win 7 上使用 texlive2011 发行版。我的 tex 文件是(来自词汇表的示例):
% This file is public domain
\documentclass[a4paper]{article}
\usepackage[style=long4colheaderborder,xindy]{glossaries}
\makeglossaries
\newglossaryentry{w}{name={$w$},
sort=w,
description={width},
symbol=m}
\newglossaryentry{M}{name={$M$},
sort=M,
description={mass},
symbol=kg}
\begin{document}
\printglossaries
The width, \gls{w}, is measured in meters. The mass, \gls{M} is measured in kilograms.
\end{document}
答案1
有一种解决方法是为makeglossaries
会话设置另一个临时文件夹。首先,让我们看看我的执行情况:
如果我echo %TEMP%
在命令提示符中输入,则会显示临时文件夹的完整路径:
C:\>echo %TEMP%
C:\Users\Paulo\AppData\Local\Temp
为了使用另一个临时文件夹,只需重新定义环境变量TEMP
:
C:\>set TEMP=C:\paulo\mytemp
然后您可以安全地运行makeglossaries
该命令提示符会话:
希望能帮助到你。:)