
이 사이트에는 소스 코드 목록을 표시하는 패키지에 대한 많은 질문(및 답변)이 있습니다. 하지만 제가 찾은 모든 답변은 적어도 5년은 된 것입니다. 그리고 "목록"과 같은 이전 패키지보다 어떤 방식으로든 또는 다른 우수한 패키지가 개발되었는지 궁금합니다.
이상적으로는 다음과 같은 특징을 가진 목록을 갖고 싶습니다.
- 고정 너비 글꼴로 조판합니다. 너무 많은 공간을 차지하지 않는 상당히 좁은 글꼴이 바람직합니다.
- 멋진 테두리가 있는 상자에 들어 있으며 그림자가 있을 수도 있습니다.
- 컬러 배경입니다.
- C/C++/C#과 같은 언어에 대한 구문 기반 색상 코딩.
- 페이지 나누기가 발생하는 위치를 일부 제어할 수도 있습니다.
이들 중 일부는 내가 없이도 살 수 있는 케이크 위에 장식되어 있습니다.
그렇다면 2016년 현재 새롭게 개선된 솔루션이 있습니까? 대답이 "아니오"인 경우에도 여전히 도움이 될 것입니다. 검색을 중단할 수 있음을 알려주기 때문입니다.
답변1
다양한 댓글을 보면 새로운 것을 찾을 가치가 없다는 인상을 받았기 때문에 그냥 전통적인 솔루션인 패키지를 사용했습니다 listings
. 큰 노력 없이도 다음과 같은 결과를 얻을 수 있었습니다.
그림자, 좁은 글꼴( fontspec
FakeStretch 제공, 찌그러진 Consolas) 및 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
내가 원하는 대로 작동하는 것 같아서 검색을 중단했습니다.