如何使用审查包审查 cventry 的一部分?

如何使用审查包审查 cventry 的一部分?

我必须审查简历中的敏感信息。简历使用了该moderncv包。我决定使用该censor包来涂黑敏感信息。当我尝试审查 a 中的第三个参数时\cventry,我遇到了一个错误:

!@@array 的使用与其定义不符。

数学家协会

%!TeX spellcheck = en_US
\documentclass[11pt, a4paper]{moderncv}

\moderncvtheme[orange]{classic} % [color]{stye}

\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{lmodern}          
\usepackage[T1]{fontenc}
\usepackage{array}
\usepackage{censor}

\usepackage{xpatch}
\xpatchcmd{\cventry}{.\strut}{\strut}{}{}

\firstname{firstname}
\familyname{lastname}
\address{street}{postal code}
\email{e-mail}

\begin{document}

\makecvtitle

\section{Interests}
\cventry{Since 2000}{}{\censor{to be censored}}{Test}{}{}

\end{document}

错误日志

! @@array 的使用与其定义不符。@ifnextchar \reserved@d =#1\def \reserved@a {#2}\def \reserved@b {#3}\f... l.26 ...2000}{}{\censor{to be censored}}{Test}{}{}

例如,如果您\def\a1{...}', then you must always put在“\a”后输入“1”,则由于控制序列名称仅由字母组成。此处的宏后面没有所需的内容,因此我将忽略它。

!@firstoftwo 的参数有一个额外的}。\par l.26 ...2000}{}{\censor{待审查}}{Test}{}{}

我遇到了刚刚插入的}' that doesn't seem to match anything. For example,\def\a#1{...}' 和\a}' would produce this error. If you simply proceed now, the\par' 会导致我报告失控参数,这可能是问题的根源。但是如果你的}' was purious, just type2' 它会消失。

争论失控?!段落在@firstoftwo 完成之前就结束了。

\par l.26 ...2000}{}{\censor{被审查}}{Test}{}{}

我怀疑你忘记了一个“}”,导致我将这个控制序列应用于太多文本。我们该如何恢复?我的计划是忘记整件事,并希望一切顺利。

答案1

您可以\protect在命令前使用\censor以便能够编译被审查的 CV。

请参阅此 MWE

\documentclass[11pt, a4paper]{moderncv}

\moderncvtheme[orange]{classic} % [color]{stye}

\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{array}
\usepackage{censor}

\usepackage{xpatch}
\xpatchcmd{\cventry}{.\strut}{\strut}{}{}

\name{firstname}{lastname}
\address{street}{postal code}
\email{e-mail}


\begin{document}

\makecvtitle

\section{Interests}
\cventry{Since 2000}{}{\protect\censor{to be censored}}{Test}{}{} % <=============

\end{document}

及其结果:

产生的简历

相关内容