
Esta imagen muestra el extracto de unCVproducido con la moderncv
clase de documento:
Observe que después del texto en negrita hay una coma. Esto parece producirse automáticamente. ¿Cómo puedo detener esto?
Respuesta1
La entrada que estás mostrando se produce con \cventry
, por lo que queremos cambiar la definición de esta macro. Está definido en moderncvstyleclassic.sty
. Todo lo que hice fue copiarlo textualmente en mi preámbulo y eliminar la coma no deseada. (En el MWE, de hecho copié la línea y comenté el original para que el cambio fuera reconocible.
\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}
Respuesta2
en lugar de redefinir todo el comando usted mismo, también considere usar xpatch
:
\usepackage{xpatch}
\xpatchcmd\cventry{,}{}{}{}
esta línea reemplaza la primera aparición en el texto de la macro ,
por la cadena vacía, es decir, la elimina.
Aquí también estáuna buena documentación de cómo funciona el comando.
Respuesta3
Comentario obvio, pero en caso de que quieras poder alternar entre tener y no tener la coma, puedes definir un nuevo 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}}
Respuesta4
Del archivo moderncvstyleclassic.sty, elimine la coma y el punto como se muestra a continuación:
\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}}
Eliminará las comas y los puntos generados automáticamente del archivo \cventry.