Como censurar uma parte do cventry com o pacote censor?

Como censurar uma parte do cventry com o pacote censor?

Tenho que censurar informações confidenciais nos currículos. Os currículos usam o moderncvpacote. Decidi usar o censorpacote para escurecer as informações confidenciais. Quando tento censurar o terceiro parâmetro em a \cventry, encontro um erro:

! O uso de @@array não corresponde à sua definição.

O MWE

%!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}

O log de erros

! O uso de @@array não corresponde à sua definição. @ifnextchar \reserved@d =#1\def \reserved@a {#2}\def \reserved@b {#3}\f... l.26 ...2000}{}{\censor{para ser censurado}}{Teste}{}{}

Se você disser, por exemplo, \def\a1{...}', then you must always put1' depois de `\a', uma vez que os nomes das sequências de controle são compostos apenas de letras. A macro aqui não foi seguida pelo material necessário, então estou ignorando.

! O argumento de @firstoftwo tem um } extra. \par l.26 ...2000}{}{\censor{a ser censurado}}{Teste}{}{}

Encontrei um }' that doesn't seem to match anything. For example,\def\a#1{...}' e \a}' would produce this error. If you simply proceed now, the\par' que acabei de inserir me fará relatar um argumento descontrolado que pode ser a raiz do problema. Mas se você tiver }' was purious, just type2 'e ele irá embora.

Argumento descontrolado? ! O parágrafo terminou antes de @firstoftwo ser concluído.

\par l.26 ...2000}{}{\censor{a ser censurado}}{Teste}{}{}

Suspeito que você tenha esquecido um `}', fazendo com que eu aplique esta sequência de controle a muito texto. Como podemos nos recuperar? Meu plano é esquecer tudo e torcer pelo melhor.

Responder1

Você pode usar \protectantes do seu comando \censorpara poder compilar o currículo censurado.

Por favor, veja este 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}

e seu resultado:

cv resultante

informação relacionada