Skip to content

Commit

Permalink
Avoid ignoring LaTeX export output errors
Browse files Browse the repository at this point in the history
* lisp/org-macs.el (org-compile-file): When PROCESS is a list, keep
output of all the listed commands, not just the last one.
* lisp/ox-latex.el (org-latex-pdf-process): Clarify that the process
output is parsed to detect compilation errors/warnings.
  • Loading branch information
Ihor Radchenko committed Jul 31, 2022
1 parent b4d7a24 commit 4d0295b
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
9 changes: 7 additions & 2 deletions lisp/org-macs.el
Original file line number Diff line number Diff line change
Expand Up @@ -315,8 +315,13 @@ it for output."
(?F . ,(shell-quote-argument full-name))
(?o . ,(shell-quote-argument out-dir))
(?O . ,(shell-quote-argument output))))))
(dolist (command process)
(shell-command (format-spec command spec) log-buf))
;; Combine output of all commands in PROCESS.
(with-current-buffer log-buf
(let (buffer-read-only)
(erase-buffer)))
(let ((shell-command-dont-erase-buffer t))
(dolist (command process)
(shell-command (format-spec command spec) log-buf)))
(when log-buf (with-current-buffer log-buf (compilation-mode)))))
(_ (error "No valid command to process %S%s" source err-msg))))
;; Check for process failure. Output file is expected to be
Expand Down
3 changes: 3 additions & 0 deletions lisp/ox-latex.el
Original file line number Diff line number Diff line change
Expand Up @@ -1399,6 +1399,9 @@ A better approach is to use a compiler suit such as `latexmk'."
"%latex -interaction nonstopmode -output-directory %o %f"))
"Commands to process a LaTeX file to a PDF file.
The command output will be parsed to extract compilation errors and
warnings according to `org-latex-known-warnings'.
This is a list of strings, each of them will be given to the
shell as a command. %f in the command will be replaced by the
relative file name, %F by the absolute file name, %b by the file
Expand Down

0 comments on commit 4d0295b

Please sign in to comment.