Thread: [Vim-latex-devel] compiling multiple times fails
Brought to you by:
srinathava,
tmaas
From: Javier R. <jer...@gm...> - 2006-01-08 17:24:43
|
Hi, latex-suite doesn't compile multiple times. For instance, this file \documentclass{article} \begin{document} \section{uno} some text \label{sec:1} \section{2} in the section \ref{sec:1} \end{document} only is compiled one time when I use the command \ll, despite the warning of the compiler. On others tests I've made, latex-suite doesn't launch the bibtex command when necessary. I have already checked the Tex_MultipleCompileFormats and g:Tex_MultipleCompileFormats variables and both contain the string dvi,pdf I'm using vim 6.3.86 on Slackware. However, I've seen this thing happening too in SuSE 9.2 and 10 Is there something I'm missing in my config files? I'm using the latest version (latexSuite20051208.tar.gz). Any help about this would be appreciated. In the worst case, it will be nice if somebody can tell me how to debug it. Thanks in advance. -- Javier |
From: Srinath A. <sri...@gm...> - 2006-01-09 01:33:58
|
Hi On 1/8/06, Javier Rojas <jer...@gm...> wrote: > latex-suite doesn't compile multiple times. For instance, this file > > \documentclass{article} > \begin{document} > \section{uno} > some text \label{sec:1} > \section{2} > in the section \ref{sec:1} > \end{document} > > only is compiled one time when I use the command \ll, despite the warning= of > the compiler. On others tests I've made, latex-suite doesn't launch the > bibtex command when necessary. > > I have already checked the Tex_MultipleCompileFormats and > g:Tex_MultipleCompileFormats variables and both contain the string dvi,pd= f > It works for me on both windows/miktex and ubuntu/tetex. I am not sure why its not working for you, but a good first step towards finding out why is to set g:Tex_Debug to 1 in your ~/.vim/ftplugin/tex.vim, remove all auxillary files (.dvi, .aux, .log), then press \ll and finally capture the output of :call Tex_PrintDebug('comp') For the little example file in your case, this is the output: Notice the line "Need to rerun to get cross-references right...". If that line doesn't exist in your output, then it might be a problem with the function Tex_IsPresentInFile() -----------------------------------%<----------------------------------- compiler.vim: Catching LatexSuiteFileType event +Tex_SetTeXCompilerTarget: setting target to [dvi] for Compiler +Tex_SetTeXCompilerTarget: setting target to [dvi] for Viewr compiler/tex.vim: sourcing this file +Tex_RunLaTeX, b:fragmentFile =3D 0 Tex_RunLaTeX: compiling to target [dvi] Tex_RunLaTeX: getting dependency chain =3D [dvi] +Tex_SetTeXCompilerTarget: setting target to [dvi] for Compiler Tex_RunLaTeX: setting target to dvi Tex_RunLaTeX: compiling file multiple times via Tex_CompileMultipleTimes Tex_CompileMultipleTimes: latex run number : 1 Tex_CompileLatex: getting mainfname =3D [f.tex] from Tex_GetMainFileName Tex_CompileLatex: execing [make! f.tex] Tex_CompileMultipleTimes: errors =3D [] Tex_CompileMultipleTimes: Need to rerun to get cross-references right... Tex_CompileMultipleTimes: latex run number : 2 Tex_CompileLatex: getting mainfname =3D [f.tex] from Tex_GetMainFileName Tex_CompileLatex: execing [make! f.tex] Tex_CompileMultipleTimes: errors =3D [] Tex_CompileMultipleTimes: Ran latex 2 time(s) Tex_RunLaTeX: errlist =3D [ 1: ] Tex_SetupErrorWindow: mfnlog =3D f.log -Tex_RunLaTeX -----------------------------------%<----------------------------------- Srinath |
From: Javier R. <jer...@gm...> - 2006-01-09 16:26:03
|
I did as you said, and the output of :call Tex_PrintDebug('comp') was =2D----------------------------------%<----------------------------------- =2E.. (same lines as you)... =2E.. Tex_CompileLatex: execing [make! t.tex] = =20 Tex_CompileMultipleTimes: errors =3D [ = =20 Se ha detectado un error al procesar function=20 Tex_RunLaTeX..Tex_CompileMultipleTimes..Tex_GetErrorList: = =20 l=EDnea 2 = =20 E42: No hay errores] = =20 Tex_RunLaTeX: errlist =3D [ = =20 Se ha detectado un error al procesar function Tex_RunLaTeX..Tex_GetErrorLis= t: =20 l=EDnea 2 = =20 E42: No hay errores] = =20 Tex_RunLaTeX: There were errors in compiling, breaking chain... = =20 Tex_SetupErrorWindow: mfnlog =3D t.log = =20 =2DTex_RunLaTeX =2D----------------------------------%<----------------------------------- as you can see, the error messages are in spanish, my LANG is es_ES. So I=20 changed it temporally to en_US, deleted any auxiliar file, and reopened vim= ,=20 in order to send you the error messages in english. When I did \ll... it=20 worked!!! It compiled the document twice. I think the problem is due to the line 571 if errlist =3D~ 'E42: No Errors'=20 in file ftplugin/latex-suite/main.vim meanwhile, I'll change that line for "E42: No hay errores" =2D-=20 Javier |
From: Srinath A. <sri...@gm...> - 2006-01-10 02:17:51
|
Hi! On 1/9/06, Javier Rojas <jer...@gm...> wrote: > I did as you said, and the output of :call Tex_PrintDebug('comp') was > > I think the problem is due to the line 571 > > if errlist =3D~ 'E42: No Errors' > > in file ftplugin/latex-suite/main.vim > Actually, I think there's no reason to just check for '^E42: '. That should be quite robust at seeing there are no errors. I changed it in CVS (and made a release) with this fix. Srinath |