0

最近我vim-latexgVim. 我使用便携式MiKTeX将文档编译texpdf文档。到目前为止,我已经使用命令提示符来编译 tex 文件。安装vim-latex插件后,我发现Tex-Suite>Compile菜单下有一个编译选项。但是点击它没有任何作用。那么如何配置 vim-latex 以使用便携式 MiKTeX 编译器?

4

2 回答 2

1

你需要在 vim 中设置一些变量来配置 vim-latex。

这一个设置您要导出 tex 文件的顺序:

let g:Tex_FormatDependency_pdf = 'dvi,ps,pdf'

请注意,它将 *.tex 转换为 *.dvi,然后将 *.dvi 转换为 *.ps,然后将 *.ps 转换为 *.pdf。

接下来需要设置的是 vim-latex 的编译规则。这些规则中的每一个都定义了用于编译每个输出文件的程序(和参数):

let g:Tex_CompileRule_dvi = 'latex --interaction=nonstopmode $*'
let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi'
let g:Tex_CompileRule_pdf = 'ps2pdf $*.ps'

当你从 *.tex 转换为 *.dvi 时,vim-latex 将使用 'latex' 命令。然后,当它从 *.dvi 转换为 *.ps 时,它将使用 dvips。最后,它将使用 ps2pdf 将 *.ps 转换为 *.pdf。

看起来 MikTex 的可执行文件名为“latex”,所以您应该可以使用上述设置。请确保您的系统上安装了“dvips”和“ps2pdf”。

输出 *.pdf 文件将位于包含源 *.tex 文件的目录中。

于 2013-12-15T17:03:47.227 回答
0

最初的谷歌搜索让我看到这个链接:http: //vim-latex.sourceforge.net/documentation/latex-suite/customizing-compiling.html#Tex_CompileRule_format。但是,我找不到任何线索来实际配置这些变量。但最后我找到了位置。就我而言,它是

C:\Program Files (x86)\Vim\vimfiles\ftplugin\latex-suite\texrc

texrc文件包含链接中描述的所有变量。正如我在问题中所说,我miktex portable首先需要更改编译器。所以我g:Tex_CompileRule_pdf在文件中搜索并找到了这一行

TexLet g:Tex_CompileRule_pdf = 'pdflatex -interaction=nonstopmode $*'

所以,我只是pdflatex用完整路径替换

TexLet g:Tex_CompileRule_pdf = 'E:\full\path\of\miktex\pdflatex -interaction=nonstopmode $*'

接下来需要更改的是告诉 vim-latex 用于pdflatex默认编译。所以,我在文件中搜索了g:Tex_DefaultTargetFormat变量并找到了这一行

if has('macunix')
    TexLet g:Tex_DefaultTargetFormat = 'pdf'
else
    TexLet g:Tex_DefaultTargetFormat = 'dvi'
endif

无需进行所有这些检查。所以我注释掉了大部分的行

"if has('macunix')
    TexLet g:Tex_DefaultTargetFormat = 'pdf'
"else
"   TexLet g:Tex_DefaultTargetFormat = 'dvi'
"endif

在此之后,vim-latex 能够编译我的文件。但是查看器没有工作。所以,需要做更多的改变。搜索g:Tex_ViewRule_ps并更改了下面的行if has('win32'),如下所示。

if has('win32')
    TexLet g:Tex_ViewRule_ps = 'gsview32'
    TexLet g:Tex_ViewRule_pdf = 'E:\Share\PortableApps\SumatraPDF-2.4\SumatraPDF.exe'
    TexLet g:Tex_ViewRule_dvi = 'yap -1'

我不得不使用SumatraPDF,因为由于某种原因Adobe Reader 11给出了错误Unable to find the file。但Sumatra还不错。现在我可以安心使用 vim-latex 了 :)

于 2013-12-17T05:57:33.940 回答