这tcolorbox 手册显示了在 shell 输入的每一行前面添加命令提示符的一个很好的例子(第 317 页),但它显然只适用于库listings
。库有类似的选项吗minted
?我搜索了手册minted
,但我发现唯一可能提供此选项的选项是选项formatcom
……但我认为这行不通。
顺便说一下,我同意输出这个答案, 但是我
- 无法弄清楚如何在定义中格式化
\newtcblisting
(颜色、字体粗细等),并且 - 我不想在我的文件的每一行都包含我的提示信息。
我目前的MWE如下:
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{minted}
\newtcblisting{bashinput}[1][]{
listing engine=minted,
minted language=bash,
minted options={
fontsize=\small,
breaklines,
autogobble,
numbersep=2mm},
listing only,
,#1}
\begin{document}
\begin{bashinput}
user ~$ vi /etc/sysconfig/network
user ~$ grep Dipole file-name -A1 | tail -n1 | awk '\{print \$8\}'
\end{bashinput}
\end{document}
listing only,
理想情况下,我可以在包含类似以下内容的内容后添加一行every listing line={\textcolor{red}{\small\ttfamily\bfseries ~$}}
答案1
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{minted}
% < ADDED CODE >
\newcommand{\BashFancyFormatLine}{%
\def\FancyVerbFormatLine##1{\textcolor{red}{\small\$}\ ##1}%
}
% </ADDED CODE >
\newtcblisting{bashinput}[1][]{
listing engine=minted,
minted language=bash,
minted options={
fontsize=\small,
breaklines,
autogobble,
numbersep=2mm,
formatcom=\BashFancyFormatLine}, % ADDED LINE
listing only,
,#1}
\begin{document}
\begin{bashinput}
some text
\end{bashinput}
\end{document}