我想使用 minted 以自定义字体(例如 Monaco)显示 Latex 中的代码。这是我的代码。
\documentclass{article}
\usepackage{fontspec}
\usepackage{minted}
\newfontfamily\monaco{Monaco}
\setminted[matlab]{fontfamily=\monaco}
\begin{document}
\begin{minted}{matlab}
clear all;
syms k t f har;
left = -10; right = 10; down = -0.5; up = 1.5;
f = sinc(k/2)/2 * exp(1j*k*pi*t/2)
\end{minted}
\end{document}
但是,当我在 vscode 中构建代码时,解释器卡住了,占用了 90% 的 CPU。同时,它给了我以下错误。
缺少插入的 \endcsname。
如果不使用\newfontfamily
命令,则只能使用预定义的字体系列。如何在 minted 中使用自定义字体?
答案1
fontfamily 不应该是调用字体的命令,而应该是 nfss-family 名称。您可以使用 NFSSFamily 键声明这样的 familyname(我使用了 Arial,因为我没有您的字体):
\documentclass{article}
\usepackage{fontspec}
\usepackage{minted}
\newfontfamily\monaco{Arial}[NFSSFamily=ArialFamily]
\setminted[matlab]{fontfamily=ArialFamily}
\begin{document}
\begin{minted}{matlab}
clear all;
syms k t f har;
left = -10; right = 10; down = -0.5; up = 1.5;
f = sinc(k/2)/2 * exp(1j*k*pi*t/2)
\end{minted}
\end{document}