【问题标题】:Sublime text 2, make cannot find pandoc, OSXSublime text 2,make找不到pandoc,OSX
【发布时间】:2013-10-17 21:32:26
【问题描述】:

背景

我当前创建/处理 Markdown 文档的工作流程使用带有 Makefile 构建系统的 Sublime Text 2,它调用 pandoc 将它们处理成 PDF 文档。

我最近购买了一台运行 OSX 10.8.5 的新 Mac,但遇到了一些问题。

什么工作:

我已经安装了 Sublime Text 2、make(来自 xcode 命令行工具)和 Pandoc(使用网站上的包,因为 cabal 版本不适合我)。

什么不工作:

当我尝试构建文档时,它会失败并显示来自 make 的以下错误消息:

pandoc -V geometry:margin=1in -S -o project_specification.pdf project_specification.markdown
make: pandoc: No such file or directory
[Finished in 0.0s with exit code 2]make: *** [project_specification.pdf] Error 1

但是,如果我在终端使用make 运行它,makefile 构建得非常好。

我认为这是我的路径的问题,但是我真的不确定如何设置它。我的理解是 OSX 对不同的应用程序有多种路径(对我来说很奇怪,直到现在作为 Linux 用户),我不知道如何将它设置为 sublime 以使其工作。

更多背景:

生成文件:

CPP_FILES = $(wildcard *.markdown)
OBJ_FILES = $(patsubst %.markdown,%.pdf,$(CPP_FILES))

%.pdf: %.markdown
    pandoc -V geometry:margin=1in -S -o $@ $(patsubst %.pdf,%.markdown,$@)

all: $(OBJ_FILES)

clean:
    rm -f *.pdf

最后:

我发现了类似的问题,但没有一个全面的答案,所以我再次转向堆栈溢出。

提前感谢您的帮助!

【问题讨论】:

    标签: macos path makefile sublimetext2 pandoc


    【解决方案1】:

    如何破解到您的 pandoc 所在位置的路径? Sublime Text 2 默认为:/usr/bin:/bin:/usr/sbin:/sbin。此示例适用于使用 /usr/texbin 的 Tex Live 安装,但您明白了。我想到了一个更难破解的包(例如,Shell Turtlestein),但这通常适用于大多数情况。当我加载 Sublime Text 2 时,我一直运行它。如果你需要海龟 hack,请告诉我。有一些方法可以根据每个包构建脚本调整路径(例如,https://github.com/SublimeText/LaTeXTools/blob/master/LaTeX.sublime-build),但是,以下简单的插件通常可以工作:

    import os
    
    LOCAL = '/usr/bin:/bin:/usr/sbin:/sbin:/usr/texbin:/usr/local/bin'
    HOME = '/Users/HOME'  ### !!! REPLACE WITH YOUR HOME PATH !!! ###
    RVM = HOME + '/.rvm/bin:'
    
    # Sublime's default path is
    # /usr/bin:/bin:/usr/sbin:/sbin
    os.environ['PATH'] += ':'
    os.environ['PATH'] += LOCAL
    os.environ['PATH'] += RVM
    
    print 'PATH = ' + os.environ['PATH']
    

    【讨论】:

    • 是的,效果很好!运行它的另一种选择是将其放入 ~\Library\Application Support\Sublime Text 2\Packages\User 的 .py 文件中,因为它将在 ST2 启动时运行。
    • 是的,这是用户插件的一个位置。我个人喜欢使用 Packages 目录并用点零标记我自己的插件文件夹,以便它们在顶部按字母顺序排列——例如,~/Library/Application Support/Sublime Text 2/Packages/0.pathway/pathway.py。我还更改了我修改源并希望将其从版本控制中删除的任何包的文件夹名称,以便在包自动更新时我的修订不会被覆盖。我的回忆是User 目录不允许插件文件夹,我想用文件夹保持井井有条。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-05
    • 1970-01-01
    • 2014-06-09
    • 1970-01-01
    • 2013-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多