任何新的软件包的代码清单

任何新的软件包的代码清单

此站点上有许多关于显示源代码列表的软件包的问题(和答案)。但我找到的所有答案都至少有五年了,我想知道是否已经开发出任何较新的软件包,这些软件包在某种程度上优于“列表”等较旧的软件包?

理想情况下,我希望列表具有以下特征......

  1. 采用固定宽度的字体排版,最好是比较窄的字体,不会占用太多空间。
  2. 用漂亮的边框包裹起来,甚至可能带有阴影
  3. 彩色的背景。
  4. 针对 C/C++/C# 等语言的语法驱动颜色编码。
  5. 也许可以对分页符出现的位置进行一些控制。

其中有些只是锦上添花而已,没有它们我也可以活下去。

那么,2016 年的今天,有任何新的和改进的解决方案吗?如果答案是“否”,那仍然会有所帮助,因为它告诉我我可以停止寻找了。

答案1

各种评论让我觉得不值得寻找任何新东西,所以我只使用了历史悠久的解决方案,即包listings。我能够毫不费力地产生以下结果:

在此处输入图片描述

它有一个漂亮的彩色框,带有阴影,字体较窄(扁平的 Consolas,由fontspecFakeStretch 提供),还有 C# 语法高亮。很好。

设置代码的相关部分是:

\usepackage{unicode-math}
\usepackage{color}
\usepackage{listings}

\setmonofont[Scale=MatchLowercase, FakeStretch = 0.9]{Consolas}

\definecolor{bluekeywords}{rgb}{0.13,0.13,1}
\definecolor{greencomments}{rgb}{0,0.5,0}
\definecolor{redstrings}{rgb}{0.9,0,0}
\definecolor{codebackground}{rgb}{1,1,0.85}
\definecolor{codeframecolor}{rgb}{0.65,0.65,0.65}
\definecolor{shadowcolor}{rgb}{0.85,0.85,0.85}

\lstset{language=[Sharp]C,
    showspaces=false,
    showtabs=false,
    lineskip = -0.5pt,
    xleftmargin = 1pt,
    framesep = 5pt,
    frame = shadowbox,
    framerule = 1pt,
    backgroundcolor=\color{codebackground},
    rulecolor = \color{codeframecolor}, 
    rulesepcolor = \color{shadowcolor},
    rulesep = 3pt,
    aboveskip = 12pt,
    belowskip = 4pt,
    commentstyle=\itshape\color{greencomments},
    keywordstyle=\color{bluekeywords}\bfseries,
    stringstyle=\color{redstrings},
    basicstyle=\ttfamily
}

minted和软件包fancyvbr似乎较新,而且在我找到的旧答案中没有提到。但较新并不一定更好,而且listings似乎可以满足我的要求,所以我停止了寻找。

相关内容