使用 Vim Latex-live-preview 和 minted 包

使用 Vim Latex-live-preview 和 minted 包

我想知道是否有人成功使用 minted 包制作了 vim-live-preview。

当我尝试通过添加开关在 script.vim 中编辑 pdflatex 命令时-escape-shell,但这里是输出:

输出

(真实全尺寸图片:https://i.stack.imgur.com/EKaC2.png

但是,当我使用以下命令(在 shell 中手动)时,它运行良好:

pdflatex -shell-escape myfile

我想知道它是否不起作用,因为minted使用外部的东西来工作,因此无法进行实时处理。

这是由于安装不当而产生的输出minted还是其他原因?

对于那些有兴趣了解更多有关 vim 插件的人,这是我下载它的地方:Vim Latex-实时预览

编辑:

这是失败的 .log(我只放了有趣的内容)

! Package minted Error: You must invoke LaTeX with the -shell-escape flag.

See the minted package documentation for explanation.
Type  H <return>  for immediate help.

...

l.3 \begin
          {document}
Pass the -shell-escape flag to LaTeX. Refer to the minted.sty documentation for
 more information.

runsystem(which pygmentize && touch tp2.aex)...disabled.

...

! Package minted Error: You must have `pygmentize' installed to use this packag
e.

runsystem(pygmentize -S default -f latex > tp2.pyg)...disabled.

 (/tmp/tmpI8agTH/tp2.pyg)
\openout3 = `tp2.pyg'.

runsystem(pygmentize -l c -f latex -F tokenmerge             -P "verboptions= "
 -o tp2.out.pyg tp2.pyg)...disabled.

! LaTeX Error: File `tp2.out.pyg' not found.

...

l.9 \end{minted}^^M

*** (cannot \read from terminal in nonstop modes)

答案1

在 Gnu/Linux(Ubuntu)上完成此操作有两个步骤:

  1. 在您.vimrc添加的行中

    let g:Tex_DefaultTargetFormat='pdf'

    (由于某种原因,更改我的 texrc 中的默认值不起作用,但上面的操作可以)

  2. 在你的texrc文件(内部.vim/ftplugin.latex-suite)中,转到编译器规则部分。在那里,确保以下行:

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

    更改为:

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

重新启动你的 (g)vim(以便再次读取所有设置),现在编译应该可以处理所有铸造的项目。

笔记:当我发布答案时,我意识到我从未使用实时预览测试过这一点,因为我不使用它。我将 pdf 在 evince 中保持打开状态,每次重新编译时都会自动更新。

相关内容