我习惯\inputminted
将 C 代码片段包含在文档中。这些片段的颜色很漂亮。
我知道我可以写例如\textcolor{red}{foo}
但red
我想说“与 inputminted 用于变量/类型/宏/注释的颜色相同”。
我怎样才能使文本颜色与\inputminted
实际颜色相匹配?
答案1
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{C}
if(!foo){
for(zz=0;zz<-1;zz++) {
a=b;
}
}
\end{minted}
\end{document}
生产
如果你查看目录_minted-
工作名称然后您将在一个具有很长的唯一名称的文件中看到该文件(或在本例中为环境)的乳胶版本。
\begin{Verbatim}[commandchars=\\\{\}]
\PYG{k}{if}\PYG{p}{(}\PYG{o}{!}\PYG{n}{foo}\PYG{p}{)\PYGZob{}}
\PYG{k}{for}\PYG{p}{(}\PYG{n}{zz}\PYG{o}{=}\PYG{l+m+mi}{0}\PYG{p}{;}\PYG{n}{zz}\PYG{o}{\PYGZlt{}\PYGZhy{}}\PYG{l+m+mi}{1}\PYG{p}{;}\PYG{n}{zz}\PYG{o}{++}\PYG{p}{)} \PYG{p}{\PYGZob{}}
\PYG{n}{a}\PYG{o}{=}\PYG{n}{b}\PYG{p}{;}
\PYG{p}{\PYGZcb{}}
\PYG{p}{\PYGZcb{}}
\end{Verbatim}
例如,您可以看到以下关键字:如果使用 和 运算符进行设置\PYG{k}
,例如=设置为\PYG{o}
。
在default-pyg-prefix.pygstyle
同一目录中:
\expandafter\def\csname PYG@tok@o\endcsname
{\def\PYG@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
和
\expandafter\def\csname PYG@tok@k\endcsname
{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
所以我们需要的颜色\textcolor[rgb]{0.40,0.40,0.40}
是\textcolor[rgb]{0.00,0.50,0.00}
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{C}
if(!foo){
for(zz=0;zz<-1;zz++) {
a=b;
}
}
\end{minted}
roses are \textcolor{red}{red}, violets are \textcolor{blue}{blue},
keywords are \textcolor[rgb]{0.00,0.50,0.00}{keyword colour} and
operators are \textcolor[rgb]{0.40,0.40,0.40}{operator grey}.
\end{document}