This library adds LatexMk support to AUCTeX.
Requirements:
- AUCTeX
- LatexMk
- TeXLive (2011 or later if you write TeX source in Japanese)
You can install it by using package-install via MELPA.
To use this package, add the following line to your .emacs file:
(require 'auctex-latexmk)
(auctex-latexmk-setup)After that, by using M-x TeX-command-master (or C-c C-c), you can use
LatexMk command to compile TeX source.
LatexMk will inherit many AUCTeX settings, including:
- Run with
-interaction-nonestopmodeifTeX-interactive-modeminor mode is active - Run with
-synctexifTeX-source-correlate-modeis active
If you would like LatexMk to pass the -pdf flag when TeX-PDF-mode is
active add
(setq auctex-latexmk-inherit-TeX-PDF-mode t)to your .emacs file.
Additional configuration of latexmk is possible by creating a ~/.latexmkrc file. For
example, to always compile to pdf add the following line to your .latexmkrc
file:
# .latexmkrc starts
$pdf_mode = 1;
# .latexmkrc endsAdditional documention describing all the available options is available on CTAN.
Due to the bug in MikTex, you will see the following message if TeX-file-line-error is not nil.
Latexmk: Could not find file [%(file-line-error)].
-- Use the -f option to force complete processing.
As a workaround, add (setq TeX-file-line-error nil) to your .emacs file.
LatexMk command automatically stores the encoding of a source file
and passes it to latexmk via an environment variable named LATEXENC.
Here is the example of .latexmkrc to use LATEXENC:
# .latexmkrc starts
$kanji = "-kanji=$ENV{\"LATEXENC\"}" if defined $ENV{"LATEXENC"};
$latex = "platex $kanji";
$bibtex = "pbibtex $kanji";
$dvipdf = 'dvipdfmx -o %D %S';
$pdf_mode = 3;
# .latexmkrc ends