Ich kompiliere meine LaTeX-Dateien vom Terminal aus und es wird etwas lästig, jedes Mal ins Terminal zu gehen und Folgendes zu verwenden:
xelatex "file-path"
Gibt es eine Möglichkeit, dies innerhalb von Vim zu tun?
Antwort1
Wenn Sie es mit dem Paar vim
+ ernst meinen latex
, ist meine bevorzugte Option die Verwendung des Paars latexxmk
+ LaTeXBox.
latexmk
ist eigentlich unabhängig vom Editor – es ist ein Skript, das die zum Kompilieren eines Latex-Dokuments benötigten Dateien überwacht und die Kompilierung bei Bedarf erneut ausführt. Die Konfiguration ist etwas komplex, aber es ist ein wirklich nützliches Tool. Mein Setup sieht beispielsweise xelatex
eine latexmkrc
Datei (im selben Verzeichnis) wie diese vor:
$pdf_previewer = "start evince";
$pdf_pdf_update_method = 0;
$dvi_mode = 0;
$pdf_mode = 1;
$preview_continuous_mode = 1;
$pdflatex = "xelatex %O %S";
Jetzt können Sie es ausführen latexmk file-name
(aus demselben Verzeichnis!) und Sie erhalten eine automatische Kompilierung im Hintergrund, jedes Mal, wenn Sie die Datei ändern (oder eine abhängige Datei – wie eine Zeichnung oder eine Bibliographie). Speichern Sie einfach die Datei und sehen Sie zu, wie die Vorschau automatisch aktualisiert wird.
latexmk
ist in demUniversumRepository, wenn Sie dies aktiviert haben, können Sie es einfach durch installieren sudo apt-get install latexmk
.
LaTeX-BoXist ein Plugin, vim
das die Bearbeitung von LaTeX-Dateien vereinfacht und latexmk
zum Kompilieren verwendet. Installieren Sie es gemäß den Anweisungen auf der verlinkten Seite und fügen Sie dies zu Ihrem hinzu .vimrc
:
" add a <comment> vim: set spelllang=es: to change language
" LaTeX:
let g:tex_flavor='latex'
autocmd FileType tex set spell wrap linebreak
let g:LatexBox_latexmk_async=1
let g:LatexBox_latexmk_preview_continuously=1
let g:LatexBox_quickfix=2
let g:LaTeXBox_output_type='' "Let latexmkrc choose the type
(Änderungen nach Belieben). Nun starten Sie die Hintergrundkompilierung vim
mit dem Befehl \ll
.
Antwort2
Versuchen Sie etwas wie:
command C !xelatex %
in deinem ~/.vimrc
.
Dann können Sie Folgendes tun:
:C
in vim, um die Datei zu kompilieren.
Sie können komplexere Operationen mithilfe von Funktionen durchführen:
function WriteCompileTex()
write
:! xelatex %
endfunction
command WC :call WriteCompileTex()
Beachten Sie, dass benutzerdefinierte Befehle und Funktionen mit einem Großbuchstaben beginnen müssen.
Sie können außerdem Folgendes tun:
au BufWritePost *.tex ! xelatex %
Dadurch wird dieser Befehl immer ausgeführt, wenn .tex
in eine Datei geschrieben wird, sodass Sie einfach Folgendes tun können :w
und Ihre Tex-Datei nach dem Speichern kompiliert wird.