带有前缀的铸造环境

带有前缀的铸造环境

我想使用 minted 创建一个新环境,其中始终有一个前缀字符串。

例如,这个答案我努力了

\documentclass{article}

\usepackage{minted}

\newenvironment{cmdline}
{\VerbatimEnvironment
\begin{minted}{Bash}
user@host$ }
{\end{minted}}

\begin{document}

\begin{cmdline}
print('abc')
\end{cmdline}

\end{document}

但是 LaTeX 不会编译它:

(/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd)
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
)
! FancyVerb Error:
  Extraneous input ` user@host $ ' between \begin{cmdline}[<key=value>] and line e
nd
.
\FV@Error ... {FancyVerb Error:
\space \space #1
}

l.14 \begin{cmdline}

如果我删除前缀user@host $,它就可以正常工作。

我做错了什么?有没有什么办法可以实现我想要的效果?

编辑:即使我决定使用单行命令,我能得到的最好的结果也是这样的:

\documentclass{article}

\usepackage{minted}

\newcommand{\cmdline}[1]{\mint{text}^user@host$ #1^}

\begin{document}

\cmdline{echo "hello world!" # saying hello...}

\end{document}

但是,井号 ( #) 在输出中重复出现:

在此处输入图片描述

newcommand(可能与来自论点的哈希有关?铸造了看见并复制了它?

再次编辑:

我现在正在验证是否可以使用内联 Lua 代码来实现这一点。

相关内容