-
Latex 高亮文字
2019-01-04 09:54:14要给文字加下划线,用 \underline{ This is an underline text } 就可以. ...如果想要用文字高亮显示就要用到一个叫soul 的包, 这个包一共有伍个命令: \so{letterspacing} l e t t e r s p a c i n g \cap...要给文字加下划线,用 \underline{ This is an underline text } 就可以.
跟 \emph{} 命令不同 \emph 是会让文字变跟现在文字不同. 如正体变斜体, 或者斜体变正体.
如果想要用文字高亮显示就要用到一个叫soul 的包,
这个包一共有伍个命令:
\so{letterspacing} l e t t e r s p a c i n g
\caps{CAPITALS, Small Capitals} CAPITALS, Small Capitals
\ul{underlining} underlining
\st{overstriking} overstriking
\hl{highlighting} highlighting5
如果没有加color包,那么 hl 命令就跟下划线命令一样. 通常hl是预设黄色的
可以用以下命令改变颜色
\setulcolor{bule} 设置下划线的颜色为蓝
\setstcolor{yellow} 设置overstriking颜色为黄
\sethlcolor{green} 设置高亮显示为绿
更详细的命令请查阅soul的文档
下面是一个演示文档:
\documentclass{article}
\usepackage{color, soul} %用color, 和 soul 包
\begin{document}
\setulcolor{red} set underlining color
\setstcolor{green} set overstriking color
\sethlcolor{blue} set highlighting color
\so{letterspacing} \
\caps{CAPITALS, Small Capitals}\
\ul{underlining}\
\st{overstriking} \
\hl{highlighting}
\end{document} -
如何在Latex中高亮显示R语言代码
2014-05-12 00:46:59如何在Latex中高亮显示R语言代码,请看下面的示例: \documentclass[8pt]{beamer} \usepackage{ctex} \usepackage{listings} %插入代码 \usepackage{xcolor} %代码高亮 \lstset{numbers=left, %设置行号位置 ...如何在Latex中高亮显示R语言代码,请看下面的示例:
\documentclass[8pt]{beamer} \usepackage{ctex} \usepackage{listings} %插入代码 \usepackage{xcolor} %代码高亮 \lstset{numbers=left, %设置行号位置 numberstyle=\tiny, %设置行号大小 keywordstyle=\color{blue}, %设置关键字颜色 commentstyle=\color[cmyk]{1,0,1,0}, %设置注释颜色 frame=single, %设置边框格式 escapeinside=``, %逃逸字符(1左面的键),用于显示中文 %breaklines, %自动折行 extendedchars=false, %解决代码跨页时,章节标题,页眉等汉字不显示的问题 xleftmargin=2em,xrightmargin=2em, aboveskip=1em, %设置边距 tabsize=4, %设置tab空格数 showspaces=false %不显示空格 } % % % % % % % % % % % % % % % % % % % % % % % % % % % \begin{document} \begin{frame}[fragile] %must using [fragile] \begin{lstlisting}[language=R] # 绘制图形 rmax <- 3 # 设置图形分行方式和图形空白边距,并保存原有的方式 op <- par(mfrow = c(rmax,1), mar = .1+ c(2,2,2,1)) for(r in 1:rmax){ tstr <- sprintf("r=%d",r) ricker(0.005, r);title(tstr) } par(op) # 恢复默认图形页面设置 \end{lstlisting} \end{frame} \end{document}
结果如下: -
latex中代码高亮显示宏包minted用法
2019-04-02 19:02:35latex中代码高亮显示宏包minted用法 前提 使用minted需要安装python环境,以及Pygments模块,因为minted依赖于该模块提供超过300种语言的语法高亮。 latex编译时也需要添加选项-shell-escape,因为它需要调用...latex中代码高亮显示宏包minted用法
前提
使用minted需要安装python环境,以及Pygments模块,因为minted依赖于该模块提供超过300种语言的语法高亮。
latex编译时也需要添加选项-shell-escape,因为它需要调用Pygments程序,所以要通过该选项告诉tex编译器。
基本用法:
\begin{minted}{<language>} <code> \end{minted}
一个完整的例子是这样的:
\documentclass{article} \usepackage{minted} \begin{document} \begin{minted}{c} int main() { printf("hello, world"); return 0; } \end{minted} \end{document}
除了可以使用minted环境外,也可以使用
\mint
命令来代替该环境,比如:\mint{python}|import this|
另外,也可以在行内使用,比如:
words\mintinline{python}{print(x**2)}words
也可以通过文件来输入需要高亮的代码:
\inputminted[<options>]{<language>}{<filename>}.
minted宏包也提供了listing浮动体环境,用于代码的浮动显示。比如:
\begin{listing}[H] \mint{cl}/(car (cons 1 '(2)))/ \caption{Example of a listing.} \label{lst:example} \end{listing}
还可以利用
\listoflistings
生成代码listing的目录。选项
minted使用选项的方式可以用
key=value
方式给出,而仅给出key
则使用默认的选项。另外也可以针对文档中同一语言的所有代码显示设置相同的选项,
行间和行内代码分别用命令\setminted
和\setmintedinline
设置。下面介绍一些常用的选项:
-
langlinenos 选项可以使得不同语言的高亮代码的行数连续计数。
-
autogobble 选项可以去掉最前面的空格
-
baselinestretch 选项设置行距的比例值
-
beameroverlays 选项可以使得在beamer中实现overlay功能,比如使用
\only<1>{...}
-
breakafter 选项可以指定行内代码的可以换行在其后换行的字符,
字符集则是一个字符串,比如breakafter=-/d
\begin{minted}[breaklines, breakafter=d]{python} some_string = 'SomeTextThatGoesOnAndOnForSoLongThatItCouldNeverFitOnOneLine' \end{minted}
-
breakaftergroup 选项默认为true,表示当使用breakafter选项时,若断行字符有相邻的相同字符,则在最后一个字符后断行。
-
breakaftersymbolpre和breakaftersymbolpost 选项用于指定断行前后时添加的字符。
-
breakanywhere 选项用于行间代码环境中,当
breaklines=true
时,可以在任意字符处断行。 -
breakanywheresymbolpre和breakanywheresymbolpost 与breakaftersymbolpre和breakaftersymbolpost 选项类似。
-
breakautoindent 选项用于设置断行后的行的自动缩进。
-
breakbefore 类似于breakafter。
-
breakbeforegroup 类似于breakaftergroup。
-
breakbeforesymbolpre,breakbeforesymbolpost也类似于breakaftersymbolpre和breakaftersymbolpost。
-
breakbytoken 选项阻止在记号内部断行。
-
breakbytokenanywhere 选项阻止在记号内部断行,但允许在记号间断行。
-
breakindent 选项用于设置断行后接续的行的缩进距离,比如1em
-
breakindentnchars 选项可以将缩进距离设置成单字符宽度的倍数,比如2倍。
-
breaklines 选项允许代码的断行。
-
breaksymbol等价于breaksymbolleft,用于设置断行后接续行前面加入的字符。
-
breaksymbolright 用于设置断行处右侧的字符。
-
breaksymbolindent 等价于breaksymbolindentleft,设置breaksymbolleft字符的缩进距离
-
breaksymbolindentnchars 等价于 breaksymbolindentleftnchars,设置breaksymbolleft字符的缩进距离,用字符宽度倍数表示。
-
breaksymbolindentright 是右侧额外的缩进距离,用于给breaksymbolright提供空间。
-
breaksymbolindentrightnchars 是右侧额外的缩进距离,用于给breaksymbolright提供空间。用字符宽度倍数表示。
-
breaksymbolsep 等同breaksymbolsepleft,设置breaksymbolleft和相邻文本的间距。
-
breaksymbolsepnchars 等同breaksymbolsepleftnchars,设置breaksymbolleft和相邻文本的间距。用字符宽度倍数表示。
-
breaksymbolsepright,设置breaksymbolright和相邻文本的间距。
-
breaksymbolseprightnchars ,设置breaksymbolright和相邻文本的间距。用字符宽度倍数表示。
-
bgcolor 设置背景颜色。如果要使用更高级的颜色设置,可以将minted环境放置在mdframed或tcolorbox这样的环境中,若使用tcolorbox,则可以设置
\tcbuselibrary{minted}
。然后直接使用tcblisting环境,比如:
\begin{tcblisting}{<tcb options>, minted language=<language>, minted style=<style>, minted options={<option list>} } <code> \end{tcblisting}
-
codetagify 可以用于高亮注释或docstrings中的特殊代码标签,比如todo,bug,note等。
-
curlyquotes 运行将```和
'
字符转换为引号。 -
encoding 设置Pygments可识别的文件编码。
-
escapeinside 用于设置逃逸的字符对,在该字符对中的代码会被latex正常解析。要在代码中使用latex命令就需要使用该选项。
比如:
\begin{minted}[escapeinside=||]{py} def f(x): y = x|\colorbox{green}{**}|2 return y \end{minted}
-
firstline 设置显示代码的第一行,该行前面的所有行都将被忽略。
-
firstnumber 设置第一行的行号。
-
fontfamily 设置预定义的字族,比如,tt,courier等。
-
fontseries 设置预定义的字系。
-
fontsize 设置预定义的字号。
-
fontshape 设置预定义的字形。
-
formatcom 输出抄录代码前执行的命令,这是一个钩子。
-
frame 设置代码周围的线。none | leftline | topline | bottomline | lines | single
-
framerule 设置框线的宽度。
-
framesep 设置框线与内容的间距。
-
gobble 设置每行行首去掉的字符数。
-
highlightcolor 设置需要高亮行的颜色。
-
highlightlines 设置需要高亮的行的行号,是一个字符串,比如
highlightlines={1, 3-4}
。 -
keywordcase 设置关键字的大小写,lower, upper, or capitalize.
-
label 在代码周围打印一个标签的内容。
-
labelposition 设置标签的位置,比如none | topline | bottomline | all
-
lastline 设置显示代码的最后一行。该行后面不显示。
-
linenos 设置是否显示行号。若要更改行号的样式,需要重定义
\theFancyVerbLine
宏。
比如:
\renewcommand{\theFancyVerbLine}{\sffamily \textcolor[rgb]{0.5,0.5,1.0}{\scriptsize \oldstylenums{\arabic{FancyVerbLine}}}} \begin{minted}[linenos, firstnumber=11]{python} def all(iterable): for i in iterable: if not i: return False return True \end{minted}
-
numberfirstline 设置是否总是对第一行进行编号,而忽略stepnumber.
-
numbers 用于设置行号的位置left | right | both | none
-
mathescape 用于设置是否可以在逃逸字符对内使用数学模式。
-
numberblanklines 设置是否对断行后的行进行编号。
-
numbersep 设置行号和行首的间距。
-
obeytabs 设置是否将tabs仅作为tab而不转换为空格。
-
outencoding 设置Pygments输出的高亮后的文本的文件编码。
-
resetmargins 设置是否重设在其它环境中的左侧边距。
-
rulecolor 设置边框的颜色
-
samepage 设置所有代码放到相同页,即便不合适。
-
showspaces 是否显示空格。
-
showtabs 是否显示tabs。
-
space 设置显示空格用的字符
-
spacecolor 设置空格显示的颜色
-
style 设置Pygments用的样式表。
-
stepnumber 显示行号的间隔数字。
-
stepnumberfromfirst 设置是否从第一行开始设置间隔显示行号。默认情况下,显示的行号n的情况为,mod(n,stepnumber)==0时,使用该选项后,则变为:
mod(n-firstnumber,stepnumber)==0. -
stepnumberoffsetvalues 设置是否在设置间隔行号显示时忽略第一行的行号,即要显示的行与第一行的行号无关,而与真实的行数有关,当行号的值仍然是设置了第一行行号后的值。因此显示行号n的情况为,mod(n-firstnumber+1,stepnumber)==0
-
stripall 设置是否去除所有输入中的起始和末尾的空格
-
stripnl 设置是否去除所有输入中的起始和末尾的换行符(newline)
-
tab 设置tab的显示字符,注意仅当showtabs=true时才有效,可以使用
\FancyVerbTab
,\rightarrowfill
等字符。 -
tabcolor 设置tab的显示颜色
-
tabsize 设置一个tab中包含空格的数量
-
texcl 设置是否启用在注释中使用latex代码。类似于listings的用法。这种用法对于需要在注释中增加label用于引用时是有用的。当然也可以直接使用escapeinside。
-
texcomments 功能同texcl。
-
xleftmargin 代码块左侧增加的缩进
-
xrightmargin 代码块右侧增加的缩进
定义新的环境
有时我们希望在一个文档中使用多种不同命名的环境来显示不同的代码,而不是简单的使用minted环境。类似于listings宏包的
\lstnewenvironment
,minted宏包提供了\newminted
命令用于定义一个新的环境,比如:\newminted{cpp}{gobble=2,linenos} \begin{cppcode} template <typename T> T id(T value) { return value; } \end{cppcode}
上述代码中定义了一个cppcode的环境,用于显示cpp代码。如果要在cppcode环境使用在定义时未设置的选项,那么需要在使用时带上*号,比如:
\begin{cppcode*}{linenos=false, frame=single} int const answer = 42; \end{cppcode*}
类似的对于
\mint
、\mintinline
、\inputminted
类命令,也可以通过
\newmint
、\newmintinline
、\newmintedfile
命令重新定义一个针对不同语言的命令。总结
上述主要是针对minted宏包说明文档,做了用法介绍,没有特别的应用。下一篇将介绍一个关于代码显示的不错应用。
关于编译
需要注意使用minted宏包的文档编译,需要使用
-shell-escape
选项。同时在编译时,因为需要调用Pygments程序,所以对于python安装环境有一定的要求。如果安装的时官方的python,那么程序的搜索路径一般是没有问题的。但如果使用的时anaconda一套软件,并且没有将anaconda路径设置为系统的路径,那么Pygments程序可能会出现问题。因此需要在anaconda提供的命令行中来进行编译。比如:xelatex --synctex=-1 -shell-escape ega.tex
关于tab
需要注意的时,在不同编辑器之间的文本复制过程中,tab可能会产生变化。比如从notepad++的文档中拷贝代码到winedt内,tab会发生变化。如果没有办法解决该问题,那么可以想见tab转换成空格,然后再复制。
-
-
Latex插入代码并高亮显示
2018-10-17 10:44:48Latex可以方便地支持多种代码高亮,办法如下: 用到的包 \usepackage{listings} 默认的高亮是关键词加粗 也可以自定义高亮格式,例如添加以下设置(为了能够使用\color,需引入包\usepackage{xcolor}) \...Latex可以方便地支持多种代码高亮,办法如下:
用到的包
\usepackage{listings}
默认的高亮是关键词加粗
也可以自定义高亮格式,例如添加以下设置(为了能够使用\color,需引入包\usepackage{xcolor})
\lstset{ %backgroundcolor=\color{red!50!green!50!blue!50},%代码块背景色为浅灰色 rulesepcolor= \color{gray}, %代码块边框颜色 breaklines=true, %代码过长则换行 numbers=left, %行号在左侧显示 numberstyle= \small,%行号字体 %keywordstyle= \color{blue},%关键字颜色 commentstyle=\color{gray}, %注释颜色 frame=shadowbox%用方框框住代码块 }
添加代码块
\begin{lstlisting}[language={java}] public class Main { public static void main(String[] args) { System.out.println("Hello World"); } } \end{lstlisting}
--------------------------------------------------------------------------------
例子
\documentclass[GBK]{ctexart} \usepackage{listings} \usepackage{xcolor} \lstset{ %backgroundcolor=\color{red!50!green!50!blue!50},%代码块背景色为浅灰色 rulesepcolor= \color{gray}, %代码块边框颜色 breaklines=true, %代码过长则换行 numbers=left, %行号在左侧显示 numberstyle= \small,%行号字体 %keywordstyle= \color{red},%关键字颜色 commentstyle=\color{gray}, %注释颜色 frame=shadowbox%用方框框住代码块 } \begin{document} %this is a fragment of java code \begin{lstlisting}[language={java}] //java code public class Main{ public static void main(String[]args){ System.out.println("hello,world"); } } \end{lstlisting} \end{document}
效果
-
Latex文档中高亮显示代码
2018-09-17 22:16:00所需Latex库包:\usepackage{minted} minted库依赖程序:一个python程序-pygmentize。若没有,可直接用命令安装:pip install pygmentize 使用 \usepackage{minted} \begin{document} \begin... -
LaTeX中使用对C语言代码高亮显示
2019-10-03 22:04:22这几天研究了如何在latex中显示代码颇有收获,现简单的记录一下,在LaTeX中对C语言进行代码高亮显示,可以用两种方式一个是用listings宏包对代码进行显示,另一种方式是用Highlight软件生成相应的LaTeX/TeX代码,再... -
latex加下划线_给latex文字加下划线和高亮显示
2021-01-27 04:22:28要给文字加下划线,用 \underline{ This is an underline text } 就可以....如果想要用文字高亮显示就要用到一个叫soul 的包,这个包一共有伍个命令:\so{letterspacing} l e t t e r s p a c i n g\caps{CAPITA... -
给latex文字加下划线和高亮显示
2019-10-07 18:55:14要给文字加下划线,用 \underline{ This is an underline text } 就可以.... 如果想要用文字高亮显示就要用到一个叫soul 的包, 这个包一共有伍个命令: \so{letterspacing} l e t t e r s p a c i n g\cap... -
Latex投稿回复修改意见如何高亮显示
2019-05-12 09:56:01Latex Error: Option clash for package ulem.大致意思就是ulem这个包的带选项的命令行出错,类似于重复导入。 修改1:原始导入了:\usepackage{ulem}和\RequirePackage[normalem]{ulem} %DIF PREAMBLE任意删除一个... -
latex代码显示文档.zip
2020-02-29 12:04:38latex使用minted和lstlisting代码高亮显示的英文文档,相关文档也可在“AIAS编程有道”订阅号中回复“latex代码显示文档”即可获取。 -
LaTex(PART XIX)插入代码并且高亮显示
2017-10-26 19:46:16numbers=left, %行号在左侧显示 numberstyle= \small,%行号字体 keywordstyle= \color{red},%关键字颜色 commentstyle=\color{green}, %注释颜色 frame=shadowbox%用方框框住代码块 } \begin{document} % ... -
如何对LaTeX文档中的所作的修改进行高亮显示
2014-07-13 19:49:20http://www.peteryu.ca/tutorials/publishing/latexdiff You are here: Peter Yu » Tutorials » Academic Publishing Tutorials - LaTeX and PDF ... changes and highlight revisions in LaTeX docu -
latex对修改内容进行高亮
2018-03-07 22:49:45论文修改时,编辑要求对修改内容进行高亮显示。 比较简单的处理方法是使用下面的方式: \usepackage{soul} \hl{This will be highlight.} 但是遇到\cite、\ref等命令时该方式就容易出错。解决方法很简单,对... -
[LaTeX] 同时调整文字的背景颜色和文字颜色 (像MarkDown语法一样高亮显示代码)(附完整代码)
2020-07-09 16:37:09博客中代码显示会高亮,感觉还挺好看的,所以想在latex里面也实现类似的操作(且支持自动换行)。主要使用LaTeX中的`soul`这个包。 -
magic-latex-buffer, LaTeX 模式缓冲的[Emacs] 神奇语法高亮.zip
2019-09-18 07:26:31magic-latex-buffer, LaTeX 模式缓冲的[Emacs] 神奇语法高亮 magic-latex-buffer.el神奇地增强了半所见即所得编辑...视频屏幕 其他示例让它读起来很混乱 高亮显示修饰块( 注意嵌套块也被正确高亮显示) 对齐居中/齐平块 -
VScode配置latex时 出现 “Cannot find LaTeX root file”且文本无高亮提示,不显示tex图标
2020-10-23 20:01:24如图所示: ...用VScode+latex时遇到很多坑,其实不必要配置set json,网上的很多配置方案已经很老了。直接安装vscode的插件latex workship即可。要是有同学需要我可以出一个VCcode+latex配置过程。 ... -
LaTeX中Python代码的语法高亮
2019-11-09 20:14:08其中,{listings}包和{minted}包主要用于文档中程序代码语法的高亮显示,支持常见的编程语言。 {listings}基于内置或用户提供的关键字高亮程序代码语法,高亮的内容受限与关键词的数量,代码的着色功能也是有限。 {... -
latex中minted代码高亮的有趣示例
2019-04-02 21:55:10latex中minted代码高亮的有趣示例 引言 前一篇文章,介绍了minted的基本用法和选项,本文件介绍两个有趣的示例,主要通过代码高亮,以及标签引用来实现对代码的某些代码行的重点介绍。 示例一:完全利用minted... -
latex \nrightarrow不显示
2020-12-10 11:35:42@latex \nrightarrow不显示 ...在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示; 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示; 全新的 KaTeX数学公式 -
python颜色的字母代码_LaTeX中Python代码的语法高亮
2020-12-02 14:52:12LaTeX中Python代码的语法高亮本文中,“{}”中的字母为LaTeX或...其中,{listings}包和{minted}包主要用于文档中程序代码语法的高亮显示,支持常见的编程语言。{listings}基于内置或用户提供的关键字高亮程序代... -
修改内容进行高亮显示,字体颜色设置
2019-11-06 09:35:40论文修改时,编辑要求对修改内容进行高亮显示。 比较简单的处理方法是使用下面的方式: \usepackage{soul} \hl{This will be highlight.} 但是遇到\cite、\ref等命令时该方式就容易出错。解决方法很简单,对这些... -
LaTeX下代码高亮(关键字,CTeX, WinEdt, minted, highlight)
2013-06-20 13:43:42今天想在LaTeX插入代码,高亮显示,网上基本上都建议使用listings宏包,但是试用了一下,发现效果一般。 后来发现了另一个叫minted的宏包,使用简单,效果好,c++的效果如下: 但是需要安装很多东西,下面整理一下... -
搜索结果的高亮显示实现
2015-08-27 18:43:24欢迎使用Markdown编辑器写博客本Markdown编辑器...代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl -
LaTex --文字加颜色背景(高亮,反显)
2020-11-06 13:52:03将以下代码加入需要高亮显示的文字即可。 \colorbox {yellow}{A-DRM} -
XDocViewer发布8.3.1版本,支持语法高亮显示
2015-12-05 23:28:37XDocViewer发布8.3.1版本,开始支持语法高亮显示,支持的文档格式有32种:actionscript、asm、bbcode、c、clojure、cpp、cs、css、delphi、dtd、fortran、groovy、java、javascript、jsp、latex、li -
Discuz5.5.0代码高亮显示+运行代码框合成插件 下载第1/4页
2020-12-17 14:34:05几乎支持所有程序代码的高亮显示,包括以下语言:Actionscript、ADA、Apache Log、AppleScript、ASM、ASP、AutoIT、Backus-Naur form、Bash、BlitzBasic、C、C for Macs、C#、C++、CAD DCL、CadLisp、CFDG、...