From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Francesco Pizzolante" Subject: Re: [PATCH] Add catch-up all LaTeX errors Date: Wed, 26 Mar 2014 15:36:39 +0100 Message-ID: <87siq5gh6w.fsf@somewhere.org> References: <87vc14i5wp.fsf@somewhere.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: <87vc14i5wp.fsf-oHC15RC7JGTNLxjTenLetw@public.gmane.org> (Francesco Pizzolante's message of "Fri, 11 Oct 2013 10:11:02 +0200") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org To: mailing-list-org-mode Hi, May I bump up this thread? Thanks for your help. Regards, Francesco "Francesco Pizzolante" wrote: > Hi, > > This is not a definitive patch. It's just a first step in getting a better one. > > The issue is the fact that, when exporting to PDF, in some cases, Org tells > that the export has been done successfully while the PDF file has not been > produced! > > As an example, if you open the target PDF file with Adobe Reader and, in the > meantime, you export your Org file again to PDF, you'll see that Org will tell > you it's OK (Process Completed) while, if you look at the *Org PDF LaTeX > Output* buffer, you'll see an error such as: > > ! I can't write on file `toto.pdf'. > [...] > > The problem comes from the fact that Org just checks for a couple of error > messages (defined in org-latex-known-errors) and report it's OK if it doesn't > find those messages: > > (defcustom org-latex-known-errors > '(("Reference.*?undefined" . "[undefined reference]") > ("Citation.*?undefined" . "[undefined citation]") > ("Undefined control sequence" . "[undefined control sequence]") > ("^! LaTeX.*?Error" . "[LaTeX error]") > ("^! Package.*?Error" . "[package error]") > ("Runaway argument" . "Runaway argument")) > [...] > > In order to be sure to check for ALL errors, we should check for any line > beginning with '!' (http://en.wikibooks.org/wiki/LaTeX/Errors_and_Warnings). > That's the idea of this patch. > > Though, the issue with this patch is that some error can match 2 messages, and > you get the following display: > > Process completed with errors: [LaTeX error] [Unknown error] > > To this issue, I see 2 solutions: > > 1. Either catch all errors with a single regexp (and remove all other regexps): > > (defcustom org-latex-known-errors > '(("^!.*" . "LaTeX error")) > [...] > > 2. Stop on the first error found and report it. > > In all cases, it would be much better to be able to report the error line such > as: > > Process completed with errors: [! I can't write on file `toto.pdf'.] > > Can someone do this or help me to achieve it? > > Best regards, > Francesco > > --- > lisp/ox-latex.el | 3 ++- > 1 files changed, 2 insertions(+), 1 deletions(-) > > diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el > index 9262ded..2cffe38 100644 > --- a/lisp/ox-latex.el > +++ b/lisp/ox-latex.el > @@ -862,7 +862,8 @@ logfiles to remove, set `org-latex-logfiles-extensions'." > ("Undefined control sequence" . "[undefined control sequence]") > ("^! LaTeX.*?Error" . "[LaTeX error]") > ("^! Package.*?Error" . "[package error]") > - ("Runaway argument" . "Runaway argument")) > + ("Runaway argument" . "Runaway argument") > + ("^!.*" . "[Unknown error]")) > "Alist of regular expressions and associated messages for the user. > The regular expressions are used to find possible errors in the > log of a latex-run." > -- > 1.7.9 > >