尽管使用了动词选项,但 % 和 & 仍出错

尽管使用了动词选项,但 % 和 & 仍出错

我是 tabularray 的新手,在排版带有代码的表格时遇到了问题。

verb我看到必须向环境提供选项tblr以允许逐字文本,但即便如此,字符%也会&导致错误:

\documentclass{scrartcl}

\usepackage{tabularray}

\begin{document}
\begin{tblr}{verb,colspec={c}}
\verb!%!
\end{tblr}
\end{document}

给出\verb ended by end of line. \end。 也发生同样的情况&

我很茫然,因为给出\%\&打印出反斜杠也是如此。

如果重要的话我正在使用 lualatex 进行编译。

答案1

编辑:
看来您在选项中发现了一个错误verb。这可以帮助您(我们)软件包作者...

但是与此同时你可以使用 \texttt命令代替\verb˙

\documentclass{scrartcl}
\usepackage{tabularray}

\begin{document}
\verb!%!

\begin{tblr}{colspec={c}}
\texttt{\%}
\end{tblr}
\end{document}

在此处输入图片描述

答案2

  1. 您可以使用 %=12` 临时更改注释的类别\catcode。缺点:在源代码中它总是显示为注释
  2. &创建要更改为\&并使用的命令\texttt

代码

\documentclass{scrartcl}
\usepackage{tabularray}
\ExplSyntaxOn
\NewDocumentCommand{\myverb}{m}{
        \char_set_catcode_other:N \&
        \tl_set:Nn \l_tmpa_tl {#1}
        \regex_replace_all:nnN { & } { \& } \l_tmpa_tl 
        \texttt{\l_tmpa_tl}
        \char_set_catcode_alignment:N \&
        }
\ExplSyntaxOff

\begin{document}
\verb|%abcd&|

\catcode`\%=12
\myverb{%abcd&}
\catcode`\%=14 

\catcode`\%=12
\begin{tblr}{
    colspec={c c},
    vlines}
    \myverb{%abcd&}     & Another word\\
    azerty&\myverb{%a%b&cd}
\end{tblr}
\catcode`\%=14
% comment
\end{document}

在此处输入图片描述

相关内容