Revision c686f4cd
Von Moritz Bunkus vor etwa 2 Jahren hinzugefügt
SL/Template/LaTeX.pm | ||
---|---|---|
564 | 564 |
|
565 | 565 |
my $latex = $self->_get_latex_path(); |
566 | 566 |
|
567 |
for (my $run = 1; $run <= 2; $run++) { |
|
568 |
if (system("${latex} --interaction=nonstopmode $form->{tmpfile} " . |
|
569 |
"> $form->{tmpfile}.err") == -1) { |
|
570 |
die "system call to $latex failed: $!"; |
|
571 |
} |
|
572 |
if ($?) { |
|
573 |
$self->{"error"} = $form->cleanup($latex); |
|
574 |
return 0; |
|
575 |
} |
|
567 |
if (system("${latex} --interaction=nonstopmode $form->{tmpfile} " . |
|
568 |
"> $form->{tmpfile}.err") == -1) { |
|
569 |
die "system call to $latex failed: $!"; |
|
570 |
} |
|
571 |
if ($?) { |
|
572 |
$self->{"error"} = $form->cleanup($latex); |
|
573 |
return 0; |
|
576 | 574 |
} |
577 | 575 |
|
578 | 576 |
$form->{tmpfile} =~ s/tex$/dvi/; |
... | ... | |
611 | 609 |
|
612 | 610 |
my $latex = $self->_get_latex_path(); |
613 | 611 |
|
614 |
for (my $run = 1; $run <= 2; $run++) { |
|
615 |
if (system("${latex} --interaction=nonstopmode $form->{tmpfile} " . |
|
616 |
"> $form->{tmpfile}.err") == -1) { |
|
617 |
die "system call to $latex failed: $!"; |
|
618 |
} |
|
612 |
if (system("${latex} --interaction=nonstopmode $form->{tmpfile} " . |
|
613 |
"> $form->{tmpfile}.err") == -1) { |
|
614 |
die "system call to $latex failed: $!"; |
|
615 |
} |
|
619 | 616 |
|
620 |
if ($?) { |
|
621 |
$self->{error} = $form->cleanup($latex); |
|
622 |
return 0; |
|
623 |
} |
|
617 |
if ($?) { |
|
618 |
$self->{error} = $form->cleanup($latex); |
|
619 |
return 0; |
|
624 | 620 |
} |
625 | 621 |
|
626 | 622 |
$form->{tmpfile} =~ s/tex$/pdf/; |
... | ... | |
631 | 627 |
} |
632 | 628 |
|
633 | 629 |
sub _get_latex_path { |
634 |
return $::lx_office_conf{applications}->{latex} || 'pdflatex';
|
|
630 |
return $::lx_office_conf{applications}->{latex} || 'latexmk -pdf';
|
|
635 | 631 |
} |
636 | 632 |
|
637 | 633 |
sub get_mime_type() { |
Auch abrufbar als: Unified diff
LaTeX-Druckvorlagen: nicht immer zwei mal den LaTeX-Interpreter aufrufen
LaTeX-Druckvorlagen werden nun standardmäßig nicht mehr zwei mal durch
den LaTeX-Interpreter übersetzt. Statt dessen wird in der
Standardkonfiguration das Programm »latexmk -pdf« aufgerufen, das
selbständig feststellen kann, ob eine mehrfache Ausführung nötig ist,
z.B. um Referenzen richtig auflösen zu können.
Bei existierenden Installationen muss dafür in der Konfigurationsdatei
»config/kivitendo.conf« der Pfad in der Einstellung »[applications]« →
»latex« umgestellt werden, z.B. auf »latexmk -pdf«. Andere
TeX-Interpreter wie luatex werden ebenfalls unterstützt; siehe Ausgabe
von »latexmk -help«.