Matlab Prettifier 软件包问题

Matlab Prettifier 软件包问题

我无法更改matlab-prettifier包的字体大小。这是 MWE。如果我对默认字体大小满意,这个效果很好。但我觉得它太大了。我想把它缩小到像 这样的大小footnotesize

作为参考,我正在使用 LuaLaTex 进行编译。

\documentclass{article}

% Preamble
% ===========================================
\usepackage{fontspec} 
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage[numbered,framed]{matlab-prettifier}
\usepackage{polyglossia}
\setdefaultlanguage[variant=American]{english}
\usepackage{unicode-math}

\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}

\begin{document}
\begin{lstlisting}[style=Matlab-editor]
    view([150 25])
    plot(t,sol(:,1))
    xlabel('Time')
    ylabel('Temperature u(0,t)')
    title('Temperature change at center of disc')
\end{lstlisting}
\end{document}

所以我尝试做一些类似的事情

\begin{lstlisting}[basicstyle=\mlttfamily\footnotesize]
    view([150 25])
    plot(t,sol(:,1))
    xlabel('Time')
    ylabel('Temperature u(0,t)')
    title('Temperature change at center of disc')
\end{lstlisting}

但它显示为TeX Gyre Pagella(我认为)并丢失了所有语法格式。绝对不是 MATLAB 编辑器字体,就像我使用时显示的那样style=Matlab-editor。我还收到一条警告,提示“字体形状‘TU/fvm/m/n’未定义”。也许我的系统缺少字体?

答案1

的源代码matlab-prettifier具有以下样式定义作为“基本样式”(从第 447 行开始,参见手动的第 34 页):

  language               = \languageNormedDefd@mlpr,
  basicstyle             = \color{black}\ttfamily\normalsize,
  breaklines             = true,
  showspaces             = false,
  showstringspaces       = false,
  upquote                = true,
  rulecolor              = \color{black!67},
  numberstyle            = \color{black!33},
  mlscaleinline          = true,
  mlonlyheader           = false,

调整此处的第二行会导致输出更小:

\documentclass{article}

% Preamble
% ===========================================
\usepackage{fontspec} 
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage[numbered,framed]{matlab-prettifier}
\usepackage{polyglossia}
\setdefaultlanguage[variant=American]{english}
\usepackage{unicode-math}

\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}

\begin{document}
\begin{lstlisting}[style=Matlab-editor,basicstyle=\color{black}\ttfamily\footnotesize]
    view([150 25])
    plot(t,sol(:,1))
    xlabel('Time')
    ylabel('Temperature u(0,t)')
    title('Temperature change at center of disc')
\end{lstlisting}
\end{document}

在此处输入图片描述

相关内容