我正在尝试使用 Vim LaTex-Suite 运行 GVim 以便能够编译 LaTeX 文档。我有两种运行 GVim 的方法:
- 打开终端,然后输入 gvim 并输入
- 使用应用程序启动器,例如 Xubuntu 上的 xfce4-appfinder 或 i3 上的 dmenu_run
当我使用方法 1 并通过终端启动 GVim 时,我可以很好地编译,但是当我通过启动器通过方法 2 启动 GVim 时,!pdflatex -interaction=nonstopmode main.tex
从 GVim 运行命令时我无法编译。它说:
kpathsea:运行 mktexfmt pdflatex.fmt
mktexfmt:没有这样的文件或目录
我找不到格式文件“pdflatex.fmt”!
我不确定这是 GVim 或 LaTeX-Suite 的问题,因为它正在工作,但仅取决于我启动它的方式。
您对如何使其适用于方法 1 和 2 以及为什么会发生这种情况有什么想法吗?
谢谢!
答案1
此类错误的一个常见原因是 shell 环境的差异。很可能您的PATH
变量和/或当前工作目录不同并影响您的脚本。
您可以通过一个程序进行检查。
要检查环境和工作目录的差异,请执行以下操作:
从终端开始,
gvim
然后gvim
输入::!env > /tmp/env.terminal
从启动器开始
gvim
,然后gvim
输入::!env > /tmp/env.launcher
在终端窗口的 shell 提示符下,输入
diff /tmp/env.terminal /tmp/env.launcher
此diff
命令将显示两个实例的环境差异gvim
。
看看环境的差异。请务必检查PATH
和变量的值PWD
。