
此網站上有許多關於用於顯示原始程式碼清單的套件的問題(和答案)。但我找到的所有答案都至少有五年了,我想知道是否開發了任何新的軟體包,在某種程度上或其他方面優於「清單」等舊軟體包?
理想情況下,我希望清單具有以下特徵...
- 以固定寬度字體排版,最好是相當窄的字體,不會佔用太多空間。
- 封裝在一個帶有漂亮邊框的盒子中,甚至可能帶有陰影
- 彩色背景。
- 適用於 C/C++/C# 等語言的語法驅動的顏色編碼。
- 也許可以對分頁發生的位置進行一些控制。
其中一些只是錦上添花,沒有我也可以生活。
那麼,2016 年有哪些新的和改進的解決方案呢?如果答案是“否”,那仍然會有幫助,因為它告訴我我可以停止尋找。
答案1
各種評論給我的印像是不值得尋找任何新的東西,所以我只是使用了歷史悠久的解決方案,那就是軟體包listings
。我不需要太多努力就能產生以下結果:
它有一個帶有陰影的漂亮彩色框、窄字體(壓扁的 Consolas,由fontspec
FakeStretch 提供)和 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
似乎可以滿足我的要求,所以我不再尋找。