Latex 升华文本构建系统-如何自动打开PDF

Latex 升华文本构建系统-如何自动打开PDF,latex,sublimetext3,xelatex,Latex,Sublimetext3,Xelatex,我按照此处提供的说明()在Xeletex中编译latex文档,除此之外,我还希望它在编译后自动打开pdf,就像使用latexmk一样,我如何实现这一点?文档构建得很好,但每次我都必须手动打开它。以下是对实现的扩展,它在我的默认PDF查看器中成功打开了PDF 导入升华,升华插件 导入操作系统 导入时间 类CompileWithXelatexCommand(升华插件.TextCommand): def运行(自我,编辑): 如果'/usr/texbin'不在os.environ['PATH']中: o

我按照此处提供的说明()在Xeletex中编译latex文档,除此之外,我还希望它在编译后自动打开pdf,就像使用latexmk一样,我如何实现这一点?文档构建得很好,但每次我都必须手动打开它。

以下是对实现的扩展,它在我的默认PDF查看器中成功打开了PDF

导入升华,升华插件
导入操作系统
导入时间
类CompileWithXelatexCommand(升华插件.TextCommand):
def运行(自我,编辑):
如果'/usr/texbin'不在os.environ['PATH']中:
os.environ['PATH']+=':/usr/texbin'
base_fname=self.view.file_name()[:-4]
pdf_fname=base_fname+“.pdf”
self.view.window().run_命令('exec',{'cmd':['xelatex','-synctex=1','-interaction=nonstopmode',base_fname]})
尝试=5次
等待秒数=1
当尝试>0时:
如果os.path.isfile(pdf\u fname):
打破
时间。睡眠(秒到秒等待)
等待的秒数*=2
尝试-=1
操作系统(“打开”+pdf\u fname)
轮询循环是必需的;否则,open调用可能在生成PDF之前发生。通过
run\u command
同步执行一系列命令可能有一种更简洁的方法


我现在没有访问Windows的权限,但从开始,您可能只需要将
“打开”
更改为
“开始”
。需要消除或调整路径初始化逻辑。

您是在linux还是windows中执行此操作?创建pdf后,您可以尝试从python调用scritp(.bat或.sh)来打开它。这篇文章应该可以帮助您在python中为Windows和OS X实现这一点:谢谢,我稍后会看一看,现在我有点忙。至于操作系统,我在Windows上太棒了!它似乎工作得很好(它编译并打开pdf),但我仍然在sublime“Output writed on xe.pdf(1页)。Transcript writed on xe.log.xelatex:unrecogned option`-syntex=1')中收到这个警告,所以它不会影响任何东西,但这有什么问题吗?我只是按照您的建议更改了open以开始。我的错误。它应该是
-synctex=1
(带“c”)。现在编辑帖子。