我使用 XeLaTeX,但我不能同时使用两者或类似或重复的包,因为有人说在 XeLaTeX 中这是坏主意。我只想使用 minted。
这里有两个答案提供带有圆角的内联代码,但仅适用于lstinline
和minted
:
但在这些环节中,它们都依赖于listings
。
我从两个链接中的一个中取出了一些代码,并重新调整了一些命令和单词,主要是替换listing
. forminted
和\lstinline
. for \mintline
,而不依赖于listings
,但没有 则无法工作listings
。以下是较小的代码:
\documentclass[10pt, a4paper, portuguese]{abntex2}
\usepackage{etoolbox}
\usepackage{tcolorbox}
\tcbuselibrary{minted, skins, xparse}
\BeforeBeginEnvironment{minted}{\vspace{2mm}\begin{tcolorbox}[colback=bg, colframe=bg, arc=1.2pt]}%
\AfterEndEnvironment{minted}{\end{tcolorbox}\vspace{2mm}}%
\usepackage{newverbs}
\definecolor{inline}{RGB}{187,57,82}
\newverbcommand{\cverb}{\color{inline}}{}
\usemintedstyle{paraiso-dark}
\DeclareTotalTCBox{\commandbox}{ s v }
{minted, enhanced, frame hidden, arc=2pt}
{\IfBooleanTF{#1}{\textcolor{red}{\ttfamily\bfseries > }}{}%
\mintinline{#1}{#2}^#3^}
\begin{document}
\commandbox{php}{<?php echo "Hello!" ?>}
\end{document}
并且不依赖于listings
和tikz
来自让内联代码打印更美观,我只替换{\texttt{#2}}
了{\mintinline{#1}{#2}}
,但我测试了,它没有起作用,错误:
\documentclass[10pt, a4paper, portuguese]{abntex2}
%...
\newcommand{\inlinecode}[2]
{
\tikz[baseline=(s.base)]
{
\node(s)
[
rounded corners,
fill = whitesmoke, % background color
% draw = prussianblue, % border of box
text = solitudeblue, % text color
inner xsep = 2pt, % horizontal space between text and border
inner ysep = 0pt, % vertical space between text and border
text height = 2ex, % height of box
text depth = 1ex, % depth of box
#1 % other options
]{\mintinline{#1}{#2}};
}
}
\begin{document}
The basic code in PHP \inlinecode{php}{<?php echo "Hello $name" ?>}
\end{document}