如图,我使用lstlisting插入,原本float.h是一个库的名字,但是生成的代码把这个float单词给高亮了,这不符合我的心意。想请教如何删掉?
此外,想请教大神的C语言代码块是怎么搭配的颜色,如果可以给一个lstset的模板就更加感激不尽了
提供下你的代码。这样不好弄呀。我整理下答案:
有一个方案就是这样的,listings 有个技巧,就是 。literate
参数用于定义如何处理源代码中的特殊字符,它允许用户指定一个字符和相应的替换文本,从而在显示源代码时进行自定义替换或格式化。
效果如下:
\documentclass[UTF8]{ctexart} % 使用 UTF8 编码和 ctexart 文档类
\usepackage[dvipsnames]{xcolor}
\usepackage{minted} % 语法高亮和代码样式设置方面更加强大和灵活
\usemintedstyle{xcode}
\usepackage{listings}% 引入listings包,用于在文档中插入代码,并可自定义代码样式
\lstset{
language=c,
basicstyle=\ttfamily, % 设置字体族
numbers=left, %行号在左侧显示
numberstyle= \tiny, %行号字体
% identifierstyle=\color{black},
keywordstyle=\bfseries\color{NavyBlue}, % 设置关键字为粗体,颜色为NavyBlue
morekeywords={}, % 设置更多的关键字,用逗号分隔
emph={}, % 指定强调词,如果有多个,用逗号隔开
emphstyle=\bfseries\color{Rhodamine}, % 强调词样式设置
commentstyle=\itshape\color{black!50!white}, % 设置注释样式:斜体+浅灰色
columns=flexible %让注释变得紧凑
stringstyle=\bfseries\color[RGB]{128,0,0}, % 设置字符串样式
showstringspaces=false, %不显示代码字符串中间的空格标记
breaklines=true, %代码过长则换行
frame=shadowbox, %阴影效果 + 用方框框住代码块
% backgroundcolor=\color{red!50!green!50!blue!50}, %代码块背景色为浅灰色
rulesepcolor= \color{ red!20!green!20!blue!20}, %代码块边框颜色
escapeinside=``, %英文分号中可写入中文
xleftmargin=2.4em,
xrightmargin=0.5em,
aboveskip=1em,
framexleftmargin=2em,
%directivestyle={},
literate={float.}{float.}6,
}
\usepackage{graphicx}
\title{这是一个中文文章的标题} % 文章标题
\author{作者名} % 作者名字
\date{\today} % 文章日期,使用当前日期
\begin{document}
\maketitle % 生成标题页
\tableofcontents%生成目录
\begin{lstlisting}
#include<stdio.h>
#include<float.h> //这是一个新的库
int main()
float a = 1.0;
#ifdef foo
#else
#endif
printf("Today is a niceday!")
printf("FLT_MIN:%f\n"FLT_MIN);
printf("FLT_MAX:%f\n"FLT_MAX);
printf("DBL_MIN:%f\n"DBL_MIN);
printf("DBL_MAX:%f\n"DBL_MAX);
return0:
\end{lstlisting}
\end{document}
\usepackage{xcolor}
\usepackage{minted} % 语法高亮和代码样式设置方面更加强大和灵活
\usemintedstyle{xcode}
\usepackage{listings}% 引入listings包,用于在文档中插入代码,并可自定义代码样式
\lstset{
basicstyle=\ttfamily, % 设置字体族
numbers=left, %行号在左侧显示
numberstyle= \tiny, %行号字体
% identifierstyle=\color{black},
keywordstyle=\bfseries\color{NavyBlue}, % 设置关键字为粗体,颜色为NavyBlue
morekeywords={}, % 设置更多的关键字,用逗号分隔
emph={}, % 指定强调词,如果有多个,用逗号隔开
emphstyle=\bfseries\color{Rhodamine}, % 强调词样式设置
commentstyle=\itshape\color{black!50!white}, % 设置注释样式:斜体+浅灰色
columns=flexible %让注释变得紧凑
stringstyle=\bfseries\color[RGB]{128,0,0}, % 设置字符串样式
showstringspaces=false, %不显示代码字符串中间的空格标记
breaklines=true, %代码过长则换行
frame=shadowbox, %阴影效果 + 用方框框住代码块
% backgroundcolor=\color{red!50!green!50!blue!50}, %代码块背景色为浅灰色
rulesepcolor= \color{ red!20!green!20!blue!20}, %代码块边框颜色
escapeinside=``, %英文分号中可写入中文
xleftmargin=2.4em,
xrightmargin=0.5em,
aboveskip=1em,
framexleftmargin=2em
}
辛苦大神帮我参谋
lstset{
}