4

Is there any way to tell arara, that it is ok, if bibtex fails? I have to use a bibstyle provided for a document class, which produces an error for each entry. Now I still want to use arara, could I tell it to also accept a non-zero exit code for a given command? (Exit code is 2 in this case.)

  • 2
    Hello! Sadly, not with version 3.0 (the current version). In this particular build, a command is successful if and only if the exit code is 0. In version 4.0 (waiting for a manual to be written), I included a custom way to set up which conditions have to be met for a command execution to be successful. So, to answer your question, this is not directly possible for now. Quick Q: which OS do you use? Maybe we can come up with a dirty trick to make things work, at least while I am trapped inside a thesis and have no time to write the manual for version 4.0 in a near future. :) – Paulo Cereda May 10 '17 at 11:13
  • I'm using Linux so executing bibtex || true should work, but don't know, how to tell this to arara. – white_gecko May 10 '17 at 11:24
  • I was thinking something along those lines. :) Give me a couple of minutes, I will test something and report back. :) – Paulo Cereda May 10 '17 at 11:28
  • @PauloCereda beat you to it :D – Marijn May 10 '17 at 11:47
  • @white_gecko in the unlikely event that you want to use bibtex command-line options, or in the likely even that you want a cleaner solution, you can use @PauloCereda 's solution given in chat – Marijn May 10 '17 at 14:59
4

In Linux you can write a script that returns 0 even if the BibTeX run was non-zero. In arara you can call this scipt instead of the normal bibtex rule.

MWE:

% arara: pdflatex
% arara: bibtexignore
% arara: pdflatex
% arara: pdflatex
\documentclass{article}
\begin{document}
Test with non-existing bibliography file

\cite{na}
\bibliographystyle{plain}
\bibliography{nonexisting}
\end{document}

bibtexignore.yaml:

!config
identifier: bibtexignore
name: BibTeX (ignoring errors)
command: ./bibtexignore.sh @{file}
arguments: []

bibtexignore.sh:

bibtex $1
true

araraconfig.yaml (in /home/user):

!config
paths:
- /home/user/path/to/yaml/file

Result:

 / _` | '__/ _` | '__/ _` |
| (_| | | | (_| | | | (_| |
 \__,_|_|  \__,_|_|  \__,_|

Running PDFLaTeX... SUCCESS
Running BibTeX (ignoring errors)... SUCCESS
Running PDFLaTeX... SUCCESS
Running PDFLaTeX... SUCCESS

Run arara with -v to see the actual bibtex errors.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.