我尝试为自己创建一个有用的模板,以便使用 XeLaTeX 和 Markdown 撰写文章。为此,我在计算机上安装了 MikTex 2.9 并创建了这样的模板:
\documentclass{article}
\usepackage{markdown}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[numbers]{natbib}
\usepackage[scale=2.0]{ccicons}
\usepackage{hyperref}
\usepackage{geometry}
\usepackage{titlesec}
\usepackage{titling}
\usepackage{fontspec}
\usepackage{lipsum}
\usepackage{multicol}
\geometry{
a4paper,
total={170mm,257mm},
left=20mm,
top=20mm,
}
\setmainfont{Roboto}
\markdownSetup{
renderers = {
link = {#1}, % Render a link as the link label.
emphasis = {\emph{#1}}, % Render emphasis using `\emph`.
}
}
\begin{document}
\begin{multicols}{2}
\begin{markdown}
_Hello,_ [Stack Exchange](http://tex.stackexchange.com)!
\end{markdown}
\end{multicols}
\end{document}
但是当我尝试编译它时出现以下错误:
("C:\Program Files\MiKTeX 2.9\tex\generic\oberdiek\gettitlestring.sty"))
(untitled-mym.out) (untitled-mym.out)
Package hyperref Warning: Rerun to get /PageLabels entry.
*geometry* detected driver: pdftex
! Package markdown Error: I can not access the shell.
See the markdown package documentation for explanation.
Type H <return> for immediate help.
...
l.36 \end{markdown}
我认为这与我电脑上的 xelatex 设置有关。我该如何修复它?
答案1
您有两个选择。
用 处理文档
lualatex
。xelatex
使用选项来处理文档-shell-escape
。或者,如果您不需要包fontspec
,您也可以使用pdflatex
此选项。
如果我运行以下任一命令
lualatex test.tex
xelatex -shell-escape test.tex
pdflatex -shell-escape test.tex
包含test.tex
以下代码
\documentclass{article}
\usepackage{markdown}
\markdownSetup{
renderers = {
link = {#1}, % Render a link as the link label.
emphasis = {\emph{#1}}, % Render emphasis using `\emph`.
}
}
\begin{document}
\begin{markdown}
_Hello,_ [Stack Exchange](http://tex.stackexchange.com)!
\end{markdown}
\end{document}
我得到以下输出: