markdown - Sublime Text 3 Pandoc md 到 pdf
问题描述
我在 Windows 10 下使用 Sublime3。
我已经装备了一个 pandoc 构建系统来将 markdown 文件转换为 pdf:
{
"shell_cmd": "pandoc --template=\"C:\\Program Files\\Pandoc\\templates\\eisvogel.tex\" -o \"${file/\\.md/\\.pdf/}\" \"$file\" && SumatraPDF \"${file/\\.md/\\.pdf/}\"",
"selector": "text.html.markdown"
}
它曾经可以工作,现在它不再工作了,当我构建它时没有显示任何错误消息,它只是打印
[Finished in 0.1s with exit code 1]
[shell_cmd: pandoc ...]
[dir: ...]
[path: ...]
我注意到的是路径与环境变量中设置的路径不同,而且路径更长。
附加信息
--> 如果在 powershell 中键入,shell_cmd 会完成它的工作(即 pandoc 正在从 powershell 工作)
--> 我可以使用 Pandoc 包来完成工作
解决方案
事实证明,我在命令提示符下发出了很大的问题,我不得不恢复我的 win10 用户的设置以使一切恢复正常。
然而,由于 sublime text 3 使用 cmd.exe 来运行它的构建系统,我想出了一个解决方法。即使使用受损的 cmd,以下行也能完成这项工作
"cmd": ["C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe", "-command", "pandoc --template=\"C:\\Program Files\\Pandoc\\templates\\eisvogel.tex\" -o \"${file/\\.md/\\.pdf/}\" \"$file\"; SumatraPDF \"${file/\\.md/\\.pdf/}\""],
在这里,我不得不使用\"${file/\\.md/\\.pdf/}\"
将 pdf 文件保存在原始 md 文件的相同路径。
推荐阅读
- html - 如何更改 HTML 符号的颜色?
- python - 理解 Python 中的 for 循环
- .net - x64 应用程序中的 .Net WPF TaskDialog
- c++ - 无法弄清楚为什么我不断收到“未定义的引用”错误
- android - 未经检查的 Cast 警告和 ClassCastException
- python - 如何在pandas中编辑OneHotEncoder的实现过程?
- json - 如何编写 POJO 以使用 Retrofit2 从 JSON 获取对象内的特定数组?
- c++ - 如果文件在c ++中为空,如何抛出异常?
- gravityforms - 如何将 ACF(高级自定义字段)用户数据显示到重力表单?
- php - 学说生成/迁移命令不生成表格