使用宏样式创建盒装输出

使用宏样式创建盒装输出

我正在尝试获取一个特定的输出,但目前它并不如我所愿。

期望输出:

这就是我想要的结果

这是一篇 TugBoat 文章。目前我有这个解决方案:

    \documentclass{ltugboat} 
        \usepackage{fancyvrb}

        \begin{document}
        Some text
        \begin{Verbatim}[frame=single]
            \actsymb[<ll>][<ul>]{<symbol>}{<lr>}[<ur>]
        \end{Verbatim}
        \end{document}

实际产量:

实际产量

答案1

fancyvrb允许您在逐字内容中转为常规 LaTeX 宏。手册中对此进行了很好的描述。

在此处输入图片描述

\documentclass{ltugboat} 
\usepackage{fancyvrb}

\newcommand\param[1]{\textrm{$\langle$\textit{#1}$\rangle$}}

\begin{document}
Some text
\begin{Verbatim}[frame=single,commandchars=+\(\)]
  \actsymb[+param(ll)][+param(ul)]{+param(symbol)}{+param(lr)}[+param(ur)]
\end{Verbatim}
\end{document}

在此处输入图片描述

答案2

使用时要加上verbatimbox一点\catcode魔法。这样,逐字输入就不需要转义字符了,而是直接输入为(在本例中)\actsymb[<ll>][<ul>]{<symbol>}{<lr>}[<ur>]

\documentclass{article}
\usepackage{verbatimbox}
\catcode`>=\active %
\catcode`<=\active %
\def\openesc{\itshape\rmfamily$\langle$}
\def\closeesc{\/$\rangle$\upshape\ttfamily}
\def\vbdelim{%
  \catcode`<=\active %
  \catcode`>=\active %
  \def<{\openesc}%
  \def>{\closeesc}%
}
\catcode`>=12 %
\catcode`<=12 %
\begin{document}
\begin{verbbox}[\vbdelim]
\actsymb[<ll>][<ul>]{<symbol>}{<lr>}[<ur>]
\end{verbbox}
\fbox{\theverbbox}
\end{document}

在此处输入图片描述

相关内容