Ich versuche, vim / nvim als Texteditor in einer (langen) .tex-Datei zu verwenden, die sowohl als auch minted
als dsfont
Paket enthält. Hier ist ein Beispiel:
% !TeX document-id = {f2e9e8a7-1386-4a73-9989-55350ce6c529}
% !TeX TXS-program:compile = txs:///xelatex/[--shell-escape]
%\documentclass[a4paper, 12pt]{book}
\documentclass{scrreprt}
%\usepackage{fontspec}
%\usepackage{pmboxdraw}
\usepackage{amssymb, amsmath, float, framed, geometry, listings, lmodern, mathtools,multirow,parskip, paralist,pgfplots, ragged2e,setspace,tcolorbox, threeparttable, upquote, url, tikz, enumitem}
\usepackage{bbm}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{xurl}
\usepackage{minted}
\usepackage{dsfont}
\usepackage{multirow}
\usepackage{tabto}
\usepackage{tabu}
\usepackage[english]{babel}
\usepackage{newtxmath}
\usetikzlibrary{positioning}
\usepackage{xcolor}
\definecolor{mypink1}{RGB}{0, 170, 0}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\fancyhf{}
\pagestyle{fancy}
\rfoot{Page \thepage}
\usepackage[LGR]{fontenc}
\usepackage[T1]{fontenc}
\usepackage[colorlinks]{hyperref}
\hypersetup{
colorlinks,
linkcolor=blue,
filecolor=magenta,
citecolor=mypink1,
urlcolor=cyan,
}
\geometry{
a4paper,
total={170mm,257mm},
left=20mm,
top=20mm,
}
\usepackage{caption}
%\usepackage{calrsfs}
%\DeclareMathAlphabet{\pazocal}{OMS}{zplm}{m}{n}
\begin{document}
blabla
\begin{minted}{Python}
print(“Hello world”)
\end{minted}
\end{document}
Ich kann das Dokument sowohl mit Texstudio als auch mit pdflatex im Terminal problemlos kompilieren. Beim Versuch, es anzuzeigen, :LLPStartPreview
erhalte ich jedoch eine Failed to compile
Meldung und die folgende Meldung in der .log
Datei:
l.13 \usepackage
{dsfont}
Pass the -shell-escape flag to LaTeX. Refer to the minted.sty documentation for
more information.
Ich habe mir das Minted-Dokument angesehen, konnte aber keine Lösung für das Problem finden. Was mache ich falsch?
Bearbeiten1
Nach der Überprüfungdiese andere Antwort, habe ich auch versucht, die Zeile zu ersetzen
% !TeX TXS-program:compile = txs:///xelatex/[--shell-escape]
von
% !TeX TXS-program:compile = txs:///pdflatex/[--shell-escape]
Und
% !TeX TXS-program:pdflatex = pdflatex -synctex=1 -interaction=nonstopmode --shell-escape %.tex
aber es hat das Problem nicht gelöst
Bearbeiten 2
Ich versuche einzufügen (in .vimrc
Datei)
let g:vimtex_compiler_latexmk.options += ['-shell-escape']
let g:vimtex_compiler_method = 'latexmk'
Und
let g:vimtex_compiler_latexmk.options += ['-shell-escape']
let g:vimtex_compiler_method = 'latexmk'
aber es hat das Problem nicht gelöst
Bearbeiten 3
Ich habe versucht, (nacheinander) den folgenden Befehl in die Datei einzufügen .vimrc
, aber das hat das Problem nicht gelöst:
let g:livepreview_engine = 'evince' . [-shell-escape]
let g:livepreview_engine = 'evince' . ['-shell-escape']
let g:livepreview_engine = 'evince' . '[-shell-escape]'
let g:livepreview_engine =. ' -shell-escape'
Bearbeiten 4
Ich habe auch versucht, die folgende Zeile hinzuzufügen, .vimrc
ohne Erfolg
let g:livepreview_engine = 'pdflatex' . '[-shell-escape]'
Das Problem trat nicht auf, als ich :LLPStartPreview
den folgenden Code verwendete: (wobei die folgenden Zeilen auskommentiert waren):
...
\usepackage{minted}
...
\begin{minted}{Python}
print(“Hello world”)
\end{minted}
% !TeX document-id = {f2e9e8a7-1386-4a73-9989-55350ce6c529}
% !TeX TXS-program:pdflatex = pdflatex -synctex=1 -interaction=nonstopmode --shell-escape %.tex
%\documentclass[a4paper, 12pt]{book}
\documentclass{scrreprt}
%\usepackage{fontspec}
%\usepackage{pmboxdraw}
\usepackage{amssymb, amsmath, float, framed, geometry, listings, lmodern, mathtools,multirow,parskip, paralist,pgfplots, ragged2e,setspace,tcolorbox, threeparttable, upquote, url, tikz, enumitem}
\usepackage{bbm}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{xurl}
%\usepackage{minted}
\usepackage{dsfont}
\usepackage{multirow}
\usepackage{tabto}
\usepackage{tabu}
\usepackage[english]{babel}
\usepackage{newtxmath}
\usetikzlibrary{positioning}
\usepackage{xcolor}
\definecolor{mypink1}{RGB}{0, 170, 0}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\fancyhf{}
\pagestyle{fancy}
\rfoot{Page \thepage}
\usepackage[LGR]{fontenc}
\usepackage[T1]{fontenc}
\usepackage[colorlinks]{hyperref}
\hypersetup{
colorlinks,
linkcolor=blue,
filecolor=magenta,
citecolor=mypink1,
urlcolor=cyan,
}
\geometry{
a4paper,
total={170mm,257mm},
left=20mm,
top=20mm,
}
\usepackage{caption}
%\usepackage{calrsfs}
%\DeclareMathAlphabet{\pazocal}{OMS}{zplm}{m}{n}
\begin{document}
blabla
%\begin{minted}{Python}
% print(“Hello world”)
%\end{minted}
\end{document}
Antwort1
BEARBEITEN:NachDG' wies mich auf ein großes Missverständnis hin, das ich hattees sieht so aus, als ob nicht die Kompilierungsroute von geändert werden muss, vimtex
sondern die Route von vim-latex-live-preview
. Laut der README-Datei kann die Kompilierung durch die Einstellung von gesteuert werden g:livepreview_engine
. Um die Option hinzuzufügen, -shell-escape
könnte man Folgendes tun:
:let g:livepreview_engine .= ' -shell-escape'
Leider verwende ich es nicht und vim-latex-live-preview
kann es daher nicht testen.
Ursprüngliche Antwort
Notiz:Ich verwende es nicht vimtex
persönlich und kann daher nicht überprüfen, ob das Folgende wirklich funktioniert. Aber ich füge die Art und Weise hinzu, wie man die für all das erforderlichen Informationen finden kann, und denke, dass es funktionieren sollte (das ist es, was ich versuchen würde).
vimtex
ist nicht TeXstudio und analysiert meines Wissens nach die magischen Kommentare von TeXstudio nicht.
Wenn Sie in sind vim
(oder nvim
was auch immer es wert ist), können Sie zu den meisten Dingen Hilfe erhalten, indem Sie eingeben :help <thing>
und die Eingabetaste drücken. Insbesondere können Sie Hilfe zu erhalten, vimtex
indem Sie eingeben :help vimtex
. Dort finden Sie Informationen zur verwendeten Kompilierungsmethode und wie Sie diese anpassen können. (Für andere, die nicht vimtex
installiert haben, befindet sich die Hilfedatei unterHier)
Standardmäßig vimtex
wird verwendet latexmk
. Sie sollten/könnten die an übergebenen Optionen ändern, latexmk
indem Sie das g:vimtex_compiler_latexmk
Wörterbuch ändern, genauer gesagt das options
Feld dieses Wörterbuchs. Dazu können Sie im normalen Modus Folgendes eingeben:
:let g:vimtex_compiler_latexmk.options += ['-shell-escape']
Drücken Sie die Eingabetaste. Jetzt kompilieren Sie für die aktuelle Vim-Sitzung mit -shell-escape
zulässigem Wert und minted
es sollte funktionieren.
Alternativ können Sie auch vimtex
die Verwendung einer anderen Kompilierungsroute konfigurieren. vimtex
Unterstützt:
latexmk
latexrun
tectonic
arara
Sie können zwischen diesen wählen, indem Sie g:vimtex_compiler_method
folgende Einstellungen vornehmen (im Beispiel wird verwendet arara
):
:let g:vimtex_compiler_method = 'arara'
Das obige Beispiel verwendet , weil Sie mit magischen Kommentaren arara
konfigurieren können , aber ich bin kein Experte für beides, also suchen Sie entweder nach Informationen darüber oder konsultieren Sie seinearara
arara
hübsche Dokumentation.