我使用 minted 在我的文档中插入语法高亮的 HTML 代码。但它不是简单的 HTML(我的意思是有效的 HTML),并且有一些特殊字符和定义(如果你感兴趣的话,它是 Angular 模板代码)
例如,考虑这个有效的 HTML 代码片段(就我而言):
<div class="mode" [ngClass]="{'hidden': x.id == y.id}" *ngIf="z == m"></div>
结果如下\inputminted{html}{....path of file....}
:
如您所见,HTML 中的无效字符([
、]
、.
、{,
}` 等)带有红色框。
有什么方法可以禁用此功能并删除这些难看的框架?
答案1
您可以使用 Angular2 词法分析器ng2
或定义默认错误样式,使其不执行任何操作,而不是显示红色框。
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{html}
<div class="mode" [ngClass]="{'hidden': x.id == y.id}" *ngIf="z == m"></div>
\end{minted}
\begin{minted}{ng2}
<div class="mode" [ngClass]="{'hidden': x.id == y.id}" *ngIf="z == m"></div>
\end{minted}
\makeatletter
\expandafter\def\csname PYGdefault@tok@err\endcsname{\def\PYGdefault@bc##1{##1}}
\makeatother
\begin{minted}{html}
<div class="mode" [ngClass]="{'hidden': x.id == y.id}" *ngIf="z == m"></div>
\end{minted}
\end{document}