Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使vim latex正确编译而不必保存?_Vim_Latex - Fatal编程技术网

如何使vim latex正确编译而不必保存?

如何使vim latex正确编译而不必保存?,vim,latex,Vim,Latex,我刚开始使用Vim-LaTeX 默认的dvi输出不适用于我,因此我将默认设置更改为pdf,方法是在我的Tex.vim中添加“let g:Tex\u DefaultTargetFormat='pdf' 唯一的问题是我需要先保存文档(:w),然后再编译它(\ll)并在evice中查看(\lv)。如果我不保存它,并运行\ll和\lv,则在开始编辑保存的文件之前,latex将在该文件上运行,而不是在包含已编辑文件的缓冲区上运行 当我点击\ll时,如何使vim保存我的文件并编译我的文档?谢谢 这不是一个完

我刚开始使用
Vim-LaTeX

默认的
dvi
输出不适用于我,因此我将默认设置更改为
pdf
,方法是在我的
Tex.vim
中添加
“let g:Tex\u DefaultTargetFormat='pdf'

唯一的问题是我需要先保存文档(
:w
),然后再编译它(
\ll
)并在evice中查看(
\lv
)。如果我不保存它,并运行
\ll
\lv
,则在开始编辑保存的文件之前,latex将在该文件上运行,而不是在包含已编辑文件的缓冲区上运行


当我点击
\ll
时,如何使vim保存我的文件并编译我的文档?谢谢

这不是一个完美的解决方案,但会奏效, 在.vimrc中定义一个新映射:

map <f2> :w<cr><leader>ll
map:wll

这是可行的,但应该有一种更干净的方法来做到这一点。

我已经从latex suite开始使用,现在我正在使用latexmk,它工作得非常好。

这确实符合您的要求。将以下内容添加到
.vimrc
或同等文件中:

autocmd FileType tex call Tex_MakeMap("<Leader>ll", ":w <CR> <Plug>Tex_Compile", 'n', '<buffer>')
autocmd FileType tex call Tex_MakeMap("<Leader>ll", "<ESC> :w <CR> <Plug>Tex_Compile", 'v', '<buffer>')
autocmd文件类型tex call tex_MakeMap(“ll”,“:w tex_Compile”,“n”,”)
autocmd文件类型tex call tex_MakeMap(“ll”,“:w tex_Compile”,“v”,”)
您的命令应该是:

autocmd FileType tex call Tex_MakeMap('<leader>ll', ':update!<CR>:call Tex_RunLaTeX()<CR>', 'n', '<buffer>')
autocmd FileType tex call Tex_MakeMap('<leader>ll', '<ESC>:update!<CR>:call Tex_RunLaTeX()<CR>', 'v', '<buffer>')
autocmd文件类型tex call tex_MakeMap('ll',':update!:call tex_RunLaTeX()','n','')
autocmd文件类型tex call tex_MakeMap('ll',':update!:call tex_RunLaTeX()','v','')
好的,
用于vim中的注释。

您可以尝试:-

:w | !pdflatex "filename"

我相信这在您的情况下会很好。

太好了!这很有效。也许有一种更干净的方法可以做到这一点……或者可能我的Latex在我的系统上配置错误。但这解决了我的问题!谢谢!这使vim以插入模式编译,然后将光标返回到点击:imap:wlla
之前的位置。”
似乎也用于字符串()