当我转到 TexStudio -> 选项 -> 配置 TexStudio -> 构建 -> 用户命令时,我可以添加任意 shell 命令。在命令中,我可以使用字符 % 来引用当前文件名 - 不带扩展名和文件夹。我如何引用文件夹当前文件?
这手动的说:“如果您需要更多选项(例如绝对路径)请使用?并查看配置对话框底部的说明。” 但是我没有找到这些说明。
答案1
您可以使用shell 扩展在根文档的绝对路径上获取其父目录:("$(dirname ?ame")"
您需要通过 shell 执行此操作才能使扩展起作用,例如sh -c 'my-command "$(dirname ?ame")"'
)。
用例:这是我要使用的内容MikTeX在 Ubuntu 22.04 上通过 TeXstudio 中的 Docker 进行安装(参见支持 Debian 11/Ubuntu 22.04 · 问题 #1111 · MiKTeX/miktex和Docker 化的 MikTeX):
sh -c 'docker run --rm -v ~/.miktex/:/miktex/.miktex/ -v "$(dirname ?ame")":/miktex/work/ miktex/miktex:latest pdflatex "$(basename ?ame")"'
答案2
您可以使用?a)
例如,我创建了一个用户命令,它将 .bib 文件复制到当前目录中。我使用了
/home/user/bin/copy_library ?a)