Sublime Text3:带有自定义命令的 LaTeX 工具无法正常工作
Sublime Text3: LaTeX Tools with Custom Command not working correctly
我需要自定义 LaTeX 工具的设置,这样词汇表包才能正常工作。
现在一切正常。但我也想将临时文件放在一个文件夹中,将生成的 PDF 放在 .tex 文件中。
第一件事很好:一切都在构建文件夹中。但是我无法从该文件夹中取出 PDF 文件,因为我的引号将在脚本命令中被删除。
这是我的构建脚本命令:
"script_commands": [
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"makeglossaries -d build",
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"move /y \"build/$file_base_name.pdf\" \"$file_base_name.pdf\"",
"move /y \"build/$file_base_name.synctex.gz\" \"$file_base_name.synctex.gz\"",
// "move /y \"build/$file_base_name.log\" \"$file_base_name.log\""
]
前三个命令工作正常。 PDF 得到正确构建。但是移动命令不起作用。
我也试过使用完整路径,但问题是我不能做一个 \
标志,所以调用看起来像 move /y C:\path\to\the\texdocument/build/Document.pdf
也不起作用。
我也尝试过使用 '
标志。并复制作为移动的替代品。但没有帮助。
有人可以帮助我吗?
P.S.: 我正在使用 Windows。
// 编辑:我还有一个关于日志输出的问题:是否可以通过 LaTeX 工具显示错误和警告?喜欢内置的构建器吗?
这就是脚本构建系统。
谢谢
您的脚本不起作用,因为 LaTeXTools 在调用构建命令时将 shell
设置为 False
。因此,您只能调用程序,而不能调用 shell 命令,例如 move
。如果您安装了 Cygwin 或 Coreutils,它们会提供 mv
程序,这是 unix 移动命令。它作为程序而不是命令安装,可以在构建器中使用。
只需将您的构建更改为:
"script_commands": [
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"makeglossaries -d build",
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"mv -f \"build\$file_base_name.pdf\" \"$file_base_name.pdf\"",
"mv -f \"build\$file_base_name.synctex.gz\" \"$file_base_name.synctex.gz\"",
"mv -f \"build\$file_base_name.log\" \"$file_base_name.log\""
]
回答您的附加问题:
如果您有可用的日志文件,它将自动解析并显示错误和警告。
我需要自定义 LaTeX 工具的设置,这样词汇表包才能正常工作。
现在一切正常。但我也想将临时文件放在一个文件夹中,将生成的 PDF 放在 .tex 文件中。
第一件事很好:一切都在构建文件夹中。但是我无法从该文件夹中取出 PDF 文件,因为我的引号将在脚本命令中被删除。
这是我的构建脚本命令:
"script_commands": [
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"makeglossaries -d build",
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"move /y \"build/$file_base_name.pdf\" \"$file_base_name.pdf\"",
"move /y \"build/$file_base_name.synctex.gz\" \"$file_base_name.synctex.gz\"",
// "move /y \"build/$file_base_name.log\" \"$file_base_name.log\""
]
前三个命令工作正常。 PDF 得到正确构建。但是移动命令不起作用。
我也试过使用完整路径,但问题是我不能做一个 \
标志,所以调用看起来像 move /y C:\path\to\the\texdocument/build/Document.pdf
也不起作用。
我也尝试过使用 '
标志。并复制作为移动的替代品。但没有帮助。
有人可以帮助我吗?
P.S.: 我正在使用 Windows。
// 编辑:我还有一个关于日志输出的问题:是否可以通过 LaTeX 工具显示错误和警告?喜欢内置的构建器吗?
这就是脚本构建系统。
谢谢
您的脚本不起作用,因为 LaTeXTools 在调用构建命令时将 shell
设置为 False
。因此,您只能调用程序,而不能调用 shell 命令,例如 move
。如果您安装了 Cygwin 或 Coreutils,它们会提供 mv
程序,这是 unix 移动命令。它作为程序而不是命令安装,可以在构建器中使用。
只需将您的构建更改为:
"script_commands": [
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"makeglossaries -d build",
"latexmk -cd -e -f -pdf -synctex=1 -interaction=nonstopmode -auxdir=build -outdir=build",
"mv -f \"build\$file_base_name.pdf\" \"$file_base_name.pdf\"",
"mv -f \"build\$file_base_name.synctex.gz\" \"$file_base_name.synctex.gz\"",
"mv -f \"build\$file_base_name.log\" \"$file_base_name.log\""
]
回答您的附加问题: 如果您有可用的日志文件,它将自动解析并显示错误和警告。