当前位置:  开发笔记 > 编程语言 > 正文

LaTeX包用各种语言的语法高亮显示代码

如何解决《LaTeX包用各种语言的语法高亮显示代码》经验,为你挑选了5个好方法。

我正在寻找一个在代码上进行语法高亮的LaTeX包.例如,现在我使用verbatim块来编写代码:

\begin{verbatim}
    
       
           Hello
       
       Hello
    
\end{verbatim}

这可以很好地显示我的文档上的代码.但是,假设我想以IDE在输出文档中的方式突出显示HTML标记?有没有可以提供帮助的套餐?

我想对Java,C#,HTML,CSS等各种语言做同样的事情.



1> ChrisN..:

您可以使用列表包.它支持许多不同的语言,并且有很多选项可用于自定义输出.

\documentclass{article}
\usepackage{listings}

\begin{document}
\begin{lstlisting}[language=html]

    
        Hello
    
    Hello

\end{lstlisting}
\end{document}


这默认是否有颜色?在我的测试用法中我没有看到彩色输出,我不确定这是我的错误,还是仅仅是一个功能.
我在这里找到了答案:http://www.tjansson.dk/?p = 419.您只需使用lstset命令为不同的属性设置各种样式.

2> Konrad Rudol..:

在问了一个类似的问题后,我创建了另一个使用Pygments的软件包,并提供了更多的选项texments.它被称为minted并且非常稳定和可用.

只是为了展示它,这是一个用铸造突出显示的代码:

示例代码


"minted"已安装并在ShareLatex和Overleaf上运行.保存自己安装Pygments的头痛;)

3> reprogrammer..:

我推荐Pygments.它接受任何语言的一段代码,并输出语法高亮的LaTeX代码.它使用fancyvrb和color包来产生输出.我个人更喜欢它到列表包.我认为fancyvrb创造了更漂亮的结果.



4> ConcernedOfT..:

LGrind这样做.这是一个成熟的LaTeX软件包,因为adam是牛仔并且支持许多编程语言.



5> Adam..:

我会使用开发人员Konrad Rudolph提到的铸造包而不是列表包.原因如下:

上市包

列表包默认不支持颜色.要使用的颜色,你将需要包括彩包和自己与定义颜色的规则\ lstset命令作为MATLAB代码解释这里.

此外,列表包与unicode不兼容,但您可以解决这里和此处所述的问题.

以下代码

\documentclass{article}
\usepackage{listings}

\begin{document}
\begin{lstlisting}[language=html]

    
        Hello
    
    Hello

\end{lstlisting}
\end{document}

生成以下图像:

在此输入图像描述

铸造包装

铸造的包装支持颜色,unicode和看起来很棒.但是,为了使用它,你需要有python 2.6和pygments.在Ubuntu中,您可以在终端中检查您的python版本

python --version

你可以安装pygments

sudo apt-get install python-pygments

然后,由于minted调用pygments,你需要像这样使用-shell-escape编译它

pdflatex -shell-escape yourfile.tex

如果你使用像TexMaker这样的乳胶编辑器,我建议添加一个用户命令,这样你仍然可以在编辑器中编译它.

以下代码

\documentclass{article}
\usepackage{minted}
\begin{document}

\begin{minted}{html}
    
    
       
           Hello
       

       Hello
    
\end{minted}
\end{document}

生成以下图像:

在此输入图像描述

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有