
Esta imagem mostra o trecho de umcvproduzido com a moderncv
classe de documento:
Observe que após o texto em negrito há uma vírgula. Isso parece ser produzido automaticamente. Como posso parar com isso?
Responder1
A entrada que você está mostrando é produzida com \cventry
, então queremos alterar a definição desta macro. Está definido em moderncvstyleclassic.sty
. Tudo o que fiz foi copiá-lo literalmente em meu preâmbulo e remover a vírgula indesejada. (No MWE, na verdade copiei a linha e comentei o original, para tornar a alteração reconhecível.
\documentclass{moderncv}
\moderncvstyle{casual}
%%%
% the following definition is from the file moderncvstyleclassic.sty
\renewcommand*{\cventry}[7][.25em]{%
\cvitem[#1]{#2}{%
{\bfseries#3}%
% \ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}% I changed this line (with comma) ...
\ifthenelse{\equal{#4}{}}{}{ {\slshape#4}}% ... into this one (without comma).
\ifthenelse{\equal{#5}{}}{}{, #5}%
\ifthenelse{\equal{#6}{}}{}{, #6}%
.\strut%
\ifx&%
\else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
%%%
\firstname{John}
\familyname{Doe}
\begin{document}
\section{Education}
\cventry{December 2012}{Master of Science in Chocolatology}{University of Candyland}{Sugartown}{A+ with Golden Gummy Bear}{I am the chocolate-man.}
\end{document}
Responder2
em vez de redefinir todo o comando você mesmo, considere usar xpatch
:
\usepackage{xpatch}
\xpatchcmd\cventry{,}{}{}{}
esta linha substitui a primeira ocorrência no texto da macro ,
pela string vazia - ou seja, remove-a.
Aqui também estáuma boa documentação de como o comando funciona.
Responder3
Comentário óbvio, mas caso você queira alternar entre ter e não ter a vírgula, você pode definir um novo comando \cventrynocomma
como este:
\newcommand*{\cventrynocomma}[7][.25em]{%
\cvitem[#1]{#2}{%
{\bfseries#3}%
\ifthenelse{\equal{#4}{}}{}{ {\slshape#4}}%
\ifthenelse{\equal{#5}{}}{}{ #5}%
\ifthenelse{\equal{#6}{}}{}{ #6}%
\strut%
\ifx&%
\else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
Responder4
No arquivo moderncvstyleclassic.sty, remova a vírgula e o ponto como segue:
\renewcommand*{\cventry}[7][.25em]{%
\cvitem[#1]{#2}{%
{\bfseries#3}%
\ifthenelse{\equal{#4}{}}{}{ {\slshape#4}}%
\ifthenelse{\equal{#5}{}}{}{ #5}%
\ifthenelse{\equal{#6}{}}{}{ #6}%
\strut%
\ifx&%
\else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
Isso removerá as vírgulas e os pontos gerados automaticamente do \cventry.