【问题标题】:Sublime Text 3 Pandoc md to pdfSublime Text 3 Pandoc md 到 pdf
【发布时间】:2021-01-08 14:02:28
【问题描述】:

我在 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 包来完成工作

【问题讨论】:

  • 你知道有一个$file_base_name 变量吗?这样一来,您就不必在构建系统中手动将 .md 替换为 .pdf... 只需少一个错误位置。
  • 嘿,谢谢!几个小时前在寻找解决方案时才发现!问题是我没有收到任何错误...否则我会提示如何解决问题

标签: markdown sublimetext3 pandoc pdflatex


【解决方案1】:

事实证明我的命令提示符问题很大,我不得不恢复我的 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文件的同一路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-07
    • 1970-01-01
    • 2023-03-07
    • 2014-06-09
    • 2014-09-17
    • 1970-01-01
    相关资源
    最近更新 更多