如何转义表格内的百分号?

如何转义表格内的百分号?

问题是我的代码片段如下所示:

\detokenize{Some Funky Stuff 20%}

texlive 表示! File ended while scanning use of \tabu@collectbody.。如果我删除 % 符号,错误就会消失,但这个符号必须存在。但是,如果我用反斜杠 \ 转义 % 符号,则会生成 PDF,但反斜杠可见 - 换句话说,我\%在 PDF 中看到的是反斜杠。如何正确执行此操作?

编辑:

不知道这是否重要,但似乎很重要 - 我在使用表格时遇到了这个问题,例如:

\begin{longtabu} to \linewidth {b{80pt}b{78pt}b{40pt}P{100pt}P{70pt}b{35pt}}
Start & End & Duration & Comment & Category & Lost Prod. {[kWh]} \\  \noalign{\vskip 2pt} \hline 
\endhead
    \noalign{\vskip 4pt} \multicolumn{6}{l}{ \setrow{\bfseries} SOMETHING } \\
        \rowfont{\small\baselineskip=5pt} 2016-09-02 19:20:00 & 2016-09-02 22:50:00 & 03,5:30:00 & {\catcode`\%=12 \detokenize{Some Funky Stuff 20%}} & \detokenize{Utility} & 0 \\
    \noalign{\vskip 2pt} \hline \noalign{\vskip 2pt}
    \rowfont{\small\baselineskip=5pt} \multicolumn{2}{l}{Total for the stuff: } & \multicolumn{3}{l}{24.22:02:33 } & 640239,4 \\
\end{longtabu}

答案1

\detokenize宏与 类似,但与 verbatim 不同。具体来说,括号需要匹配,并且%仍然用于丢弃输入记录的剩余部分。可以通过%在 的范围内重新定义为与数字相同的 catcode 来解决此问题\detokenize

\documentclass{article}
\begin{document}
{\catcode`\%=12 \detokenize{Some Funky Stuff 20%}}

Here it is a comment again% BLAH
\end{document}

在此处输入图片描述

相关内容