我正在尝试在 TeXworks 中创建用户定义命令,但在查找引用主 .tex 文件的语法时遇到了问题。例如,如果内容为以下行,则在 TeXworks 中创建一个 .bat 文件,然后创建一个指向该 .bat 文件的新“排版工具”即可:
pdflatex "mylatexfile.tex"
然后“mylatexfile.tex”编译没有问题,编译器输出的第一行是
C:\mypath>pdflatex "mylatexfile.tex"
但是,下面的操作不起作用:
pdflatex "%1.tex"
然后编译器开始执行以下行
C:\mypath>pdflatex ".tex"
并以“...文件被忽略)...”结尾。我假设“%1”引用主 latex 文件是错误的吗?(这是我从http://code.google.com/p/texworks/wiki/AdvancedTypesettingTools#tex_-%3E_dvips_-%3E_ps2pdf。
在 latex 编辑器 LEd 中,我已成功使用 .bat 文件创建了用户定义命令。然而,那里的“%2”应该引用主 latex 文件。我在 TeXworks 中尝试过,但无济于事。我得到的结果与使用“%1”相同。
有小费吗?
我正在使用 MiKTeX 2.9 和 Windows 7。
答案1
在批处理文件中使用%1
、%2
等是有意义的,并获取在命令行中提供的参数。因此,如果我有一个最小的批处理文件demo.bat
:
pdflatex“%1.tex”
我会在命令行中使用它
演示 mylatex文件
我认为您正在做的是%1
在从 TeXworks 执行批处理文件时尝试使用来引用主文件。但是,TeXworks 使用代码$fullname
来引用包括扩展名在内的主 TeX 文件,并$basename
使用名称减去扩展名。例如,我直接运行 pdfLaTeX 的设置是:
因此,为了运行需要一个参数的示例批处理文件,我会使用类似的方法
我需要在‘参数’框中为批处理文件所需的每一个参数添加一行(%1
,,%2
等等)。