Bundledoc 工具在 Windows 7 操作系统中显示错误

Bundledoc 工具在 Windows 7 操作系统中显示错误

根据 bundledoc 的文档,我使用了文档中提到的简单 Tex 文件

\RequirePackage{snapshot}
\documentclass[11pt]{article}
\begin{document}
Hello, world! \ref{sec2}
\end{document}

它会生成一个文件hello.dep。其中生成的内容hello.dep包括:

\RequireVersions{
  *{application}{TeX}     {1990/03/25 v3.x}
  *{format} {LaTeX2e}     {2011/06/27 v2.e}
  *{package}{snapshot}    {2002/03/05 v1.14}
  *{class}  {article}     {2007/10/19 v1.4h}
  *{file}   {size11.clo}  {2007/10/19 v1.4h}
}

我运行了以下命令

bundledoc --config=miktex.cfg hello.dep

但它会产生下面提到的错误

initexmf: --find-latex-input: unknown option
bundledoc: "initexmf --find-latex-input %BDINPUTS%" (BDINPUTS="hello.tex") failed to find hello.tex

谁能指导我如何解决这个错误。

谢谢

答案1

正如 Jon 在评论中指出的那样,该软件包提供的配置文件绝对过时了。如错误消息所示,使用的命令不起作用--find-latex-input,甚至在 MiKTeX 文档中也不再提及。

要恢复该功能,必须创建一个自己的文件。下面我将提供一个。顺便说一句:事实证明,Windows 版 TeX Live 也受到影响。

第一的

MiKTeX 用户必须下载命令行工具zip.exe,TeX Live 中已包含该工具。因此,作为 MiKTeX 用户,请转到ftp://ftp.info-zip.org/pub/infozip/win32/,下载最新的版本zipXXX.zip,并将至少包含的版本提取zip.exe到系统路径中包含的文件夹中。(关于其他存档程序的说明见后文。)

第二

打开您喜欢的文本编辑器并将以下内容粘贴到

# Windows 中 TeXing 的 bundledoc 配置文件,
# 作者:Steffen "Speravir" Hoffmann,许可:LPPL,
# 来源:https://tex.stackexchange.com/a/159012/9237
#
# 来自程序提供的配置文件
Scott Pakin 的 # 软件包

# 假设:你的路径中某处有“zip”,并且它接受
# 下面的“bundle”行使用的命令行选项。

捆绑包:zip -r -v -9 %BDBASE%.zip %BDINPUTS%
接收器:> NUL 2>&1
查找:kpsewhich -progname=latex $BDINPUTS

将其另存为wintex.cfg或任何您想要的内容,保存在您本地 TeXMF 根目录中(MiKTeX 用户:用户维护的根目录,参见在 MiKTeX 中创建本地 texmf 树)。请注意不要意外地使用文件扩展名保存.txt

有经验的用户会注意到,这实际上是通过提供的配置文件构建的,但它同时在 Windows 中运行。

第三

更新您的文件名数据库 (FNDB)。然后您可以使用带有选项的文件--config。不过,MiKTeX 用户应该知道,在 Windows 中必须单独安装 Perl 解释器,参见。MiKTeX 和 Perl 脚本(以及一个 Python 脚本)


PS:理论上,您可以使用每个在命令行上运行的存档程序。您必须调整bundle配置文件中以 开头的行。但有一个警告:变量%BDBASE%%BDINPUTS%扩展为用双引号括起来的字符串(将该bundle行更改为bundle echo %BDBASE% %BDINPUTS%并执行bundledoc此更改后的版本,您将会看到)。归档程序必须能够处理这个问题。在对7z命令行版本的 7-Zip 进行的测试中,我没有成功,其他程序我没能测试。

相关内容