Estou usando o modelo para moderncv e quero remover os pontos no final da linha \cventry
, alguém pode recodificar o comando para mim?
\documentclass[11pt,a4paper,sans]{moderncv}
\moderncvstyle{casual}
\name{John}{Doe}
\begin{document}
\makecvtitle
\section{Education}
\cventry{1990--2015}{Wisdom}{School of life}{Earth}{}{Description}
\end{document}
Responder1
Para mudar isso, você precisará alterar a forma como \cventry
está definido.
\cventry
é definido como:
\renewcommand*{\cventry}[7][.25em]{%
\savebox{\cventryyearbox}{%
\hspace*{2\separatorcolumnwidth}%
\hintstyle{#2}}%
\setlength{\cventrytitleboxwidth}{\widthof{\usebox{\cventryyearbox}}}%
\setlength{\cventrytitleboxwidth}{\maincolumnwidth-\cventrytitleboxwidth}%
\begin{minipage}{\maincolumnwidth}%
\parbox[t]{\cventrytitleboxwidth}{%
\strut%
{\bfseries#3}%
\ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}%
\ifthenelse{\equal{#5}{}}{}{, #5}%
\ifthenelse{\equal{#6}{}}{}{, #6}%
.\strut}%
\usebox{\cventryyearbox}%
\end{minipage}%
\ifx&%
\else{%
\newline{}%
\begin{minipage}[t]{\maincolumnwidth}%
\small%
#7%
\end{minipage}}\fi%
\par\addvspace{#1}}
Você pode usar o pacotexpatch
para corrigir este comando no preâmbulo do seu documento. Se você olhar a definição acima, verá que o que é relevante mudar é a linha que diz .\strut}%
.
xpatch
fornece o comando \xpatchcmd
. A sintaxe do comando é:
\xpatchcmd{⟨command⟩}{⟨search⟩}{⟨replace⟩}{⟨success⟩}{⟨failure⟩}
MWE
\documentclass{moderncv}
\moderncvstyle{casual}
\name{John}{Doe}
\usepackage{xpatch}
\xpatchcmd{\cventry}{.\strut}{\strut}{}{}
\begin{document}
\makecvtitle
\section{Education}
\cventry{1990--2015}{Wisdom}{School of life}{Earth}{}{Description}
\end{document}
Responder2
Isso também funciona para mim:
\usepackage{xpatch}
\xpatchcmd\cventry{.}{}{}{}
Responder3
Como observação, a partir da resposta do @AdamLiter, você precisa considerar o \moderncvstyle
usado. Por exemplo, usando \moderncvstyle{casual}
, lendo dentro do arquivo moderncvstylecasual.sty
(localizado em'/texmf-dist/tex/latex/moderncv', considerandoTeXlive 2019), você verá \moderncvbody{1}
que isso significa moderncvbodyi.sty
. Então, dentro desta última, você pode pegar a definição de \cventry
, que neste caso é:
\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}}
No seu tex
arquivo preamble
agora você pode copiá-lo, alterando .\strut%
com \strut%
, e sugiro que você dê outro nome para issonovo comando(por exemplo \cventrynofinaldotcasual
) para não substituir o original, mas para usar estepersonalizado \cventry
somente quando você precisar, assim:
\newcommand*{\cventrynofinaldotcasual}[7][.25em]{% ROW CHANGED: NOTE '\newcommand', NOT '\renewcommand'!
\cvitem[#1]{#2}{%
{\bfseries#3}%
\ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}%
\ifthenelse{\equal{#5}{}}{}{, #5}%
\ifthenelse{\equal{#6}{}}{}{, #6}%
\strut% ROW CHANGED!
\ifx&%
\else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
Agora você pode usar o novo comando no body
seu tex
arquivo assim:
\cventrynofinaldotcasual[spacing]{years}{degree/job title}{institution/employer}{localization}{optional: grade/...}{optional: comment/job description} % OUTPUT WITHOUT FINAL DOT!