我在 YuoTube 上看过一些视频,人们用 Emacs 做了一些很酷的事情,例如编译 LaTeX 文件并在 Emacs 中将其作为 pdf 查看我还看到了编译 graphviz DOT 文件并在 Emacs 中查看其 PNG. 用 gvim 能做类似的事情吗?
答案1
预览是在 Vim 内部还是外部真的很重要吗?
这是我做的。在我的 .vimrc 中,我有:
" save file whenever cursor moves
function! Update_if_possible()
if filewritable(bufname("%"))
update
endif
endfunction
au CursorMoved * call Update_if_possible()
au CursorMovedI * call Update_if_possible()
这会使 (g)vim 在光标移动时保存文件。实际上,文件始终以这种方式保存。
我用latex-box 插件用于编写 LaTeX,它使用latexmk进行编译。Latexmk 可以配置为在文件发生更改时自动重新编译。
我在屏幕左侧放置了 gvim 窗口。在右侧,我放置了一个 PDF 查看器,只要 PDF 发生变化,它就会自动重新加载。(对于 Linux,您可以使用以下几种查看器:evince、okular、zathura、xpdf 等。)结果是,PDF 预览器会在我输入时更新。它的速度远不如,橡胶的实时预览,但非常接近。它肯定比您链接到的 emacs 视频更好,因为与此不同,我甚至不必做任何事情来编译;gvim 不断保存文件,再加上 latexmk,意味着文件在我输入时始终在编译,因此,PDF 预览始终在更新。
答案2
不可以。在 gvim 中,您可以编译一个文件并在其自己的窗口中使用外部查看器显示结果,但不能在 gvim 窗口中显示。