diff --git a/CHANGELOG b/CHANGELOG index 2568de9..a8ecb53 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -18,6 +18,7 @@ version 2.5.1 (31 Jan 2026) - Add contemporary CV header style to cover letter, which also makes icons visible (#186) - Fix minor horizontal spacing issue in 'contemporary' style header +- Added optional support for specifying pronouns (#249) version 2.4.2 (01 Feb 2025) diff --git a/manual/moderncv_userguide.tex b/manual/moderncv_userguide.tex index 80fe298..ba473c3 100644 --- a/manual/moderncv_userguide.tex +++ b/manual/moderncv_userguide.tex @@ -97,7 +97,7 @@ emph={ cvitem, cventry, cvdoubleentry, cvdoubleitem, cvtripleitem, cvlistitem, cvlistdoubleitem, cvcolumns, moderncvstyle, moderncvcolor, cvskill, cvskilllegend, cvskillplainlegend, cvskillhead, cvskillentry, nopagenumbers, - name, born, address, email, link, social, phone, homepage, extrainfo, photo, quote, section, subsection, setlength, NewDocumentCommand, definecolor, colorlet, cvitemwithcomment, + name, born, pronouns, address, email, link, social, phone, homepage, extrainfo, photo, quote, section, subsection, setlength, NewDocumentCommand, definecolor, colorlet, cvitemwithcomment, recipient, subject, opening, closing, signature, enclosure }, emphstyle={\color{cvblue}}, @@ -106,7 +106,7 @@ addresssymbol, mobilephonesymbol, fixedphonesymbol, faxphonesymbol, emailsymbol, homepagesymbol, linkedinsocialsymbol, xingsocialsymbol, twittersocialsymbol, githubsocialsymbol, gitlabsocialsymbol, stackoverflowsocialsymbol, bitbucketsocialsymbol, skypesocialsymbol, orcidsocialsymbol, researchgatesocialsymbol, arxivsocialsymbol, inspiresocialsymbol, - researcheridsocialsymbol, telegramsocialsymbol, whatsappsocialsymbol, signalsocialsymbol, matrixsocialsymbol, googlescholarsocialsymbol, cvstretchability, bornsymbol + researcheridsocialsymbol, telegramsocialsymbol, whatsappsocialsymbol, signalsocialsymbol, matrixsocialsymbol, googlescholarsocialsymbol, cvstretchability, bornsymbol, gendersymbol }, emphstyle={[2]\color{cvblue!60!cvgrey}\bfseries}, literate={{é}{{\'e}}1}, @@ -299,6 +299,18 @@ A command for a birth date. \born{} \end{lstlisting} +\paragraph{\code{\\pronouns}} +A command for your pronouns. +\begin{lstlisting} + \pronouns{} +\end{lstlisting} + +\paragraph{\code{\\gendericon}} +A command for the icon used for your gender. +\begin{lstlisting} + \gendericon{} +\end{lstlisting} + \paragraph{\code{\\address}} A command for a three-lined street address. \begin{lstlisting} @@ -790,6 +802,7 @@ Currently \Moderncv supports the following commands as \code{<\\symbolcommand>}: \item \code{\\bitbucketsocialsymbol} \item \code{\\skypesocialsymbol} \item \code{\\bornsymbol} + \item \code{\\gendersymbol} \item \code{\\arxivsocialsymbol} \item \code{\\inspiresocialsymbol} \end{multicols} diff --git a/moderncv.cls b/moderncv.cls index 1328bdb..72b5b85 100644 --- a/moderncv.cls +++ b/moderncv.cls @@ -224,6 +224,14 @@ % usage: \title{} \renewcommand*{\title}[1]{\def\@title{#1}} +% defines one's preferred pronouns (optional) +% usage: \pronouns{<pronouns>} +\newcommand*{\pronouns}[1]{\def\@pronouns{#1}} + +% defines one's preferred gender icon (optional) +% usage: \gendericon{<gendericon>} +\newcommand*{\gendericon}[1]{\def\@gendericon{#1}} + % defines one's address (optional) % usage: \address{<street>}{<city>}{<country>} % where the <city> and <country> arguments can be omitted or provided empty @@ -361,6 +369,7 @@ \newcommand*{\listitemsymbol} {\labelitemi~} \newcommand*{\addresssymbol} {} \newcommand*{\bornsymbol} {} +\newcommand*{\gendersymbol} {} \newcommand*{\mobilephonesymbol} {} \newcommand*{\fixedphonesymbol} {} \newcommand*{\faxphonesymbol} {} diff --git a/moderncvheadi.sty b/moderncvheadi.sty index 11f69a9..3eb132d 100644 --- a/moderncvheadi.sty +++ b/moderncvheadi.sty @@ -86,6 +86,7 @@ \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% \ifthenelse{\isundefined{\@born}}{}{\makenewline\bornsymbol\@born}% + \ifthenelse{\isundefined{\@pronouns}}{}{\makenewline\@gendericon~\@pronouns}% \phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol% @@ -182,6 +183,7 @@ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}% \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link \makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}% + \ifthenelse{\isundefined{\@pronouns}}{}{\addtomakeheaddetails{\@pronouns}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi% \end{minipage}\\[2em] % recipient block diff --git a/moderncviconsawesome.sty b/moderncviconsawesome.sty index 8430adb..a712398 100644 --- a/moderncviconsawesome.sty +++ b/moderncviconsawesome.sty @@ -102,6 +102,8 @@ %\renewcommand*{\matrixsocialsymbol} {} % \renewcommand*{\arxivsocialsymbol} {{\color{arxiv}{\small\faarXiv}}~} % \renewcommand*{\inspiresocialsymbol} {{\color{inspire}{\small\faInspire}}~} +\def\@gendericon{\faNeuter} +\renewcommand*{\gendersymbol} {{\small\@gendericon}~} \renewcommand*{\bornsymbol} {{\color{born}\small\faAsterisk}~} % alternative: \faBabyCarriage \renewcommand*{\mediumsocialsymbol} {{\color{medium}\small\faMedium}~} diff --git a/template.tex b/template.tex index 473d22e..dfc468d 100644 --- a/template.tex +++ b/template.tex @@ -56,6 +56,8 @@ \name{John}{Doe} \title{Résumé title} % optional, remove / comment the line if not wanted \born{4 July 1776} % optional, remove / comment the line if not wanted +\pronouns{they/them} % optional, remove / comment the line if not wanted +\gendericon{\faNeuter} % optional, remove / comment the line if not wanted \address{street and number}{postcode city}{country}% optional, remove / comment the line if not wanted; the "postcode city" and "country" arguments can be omitted or provided empty \phone[mobile]{+1~(234)~567~890} % optional, remove / comment the line if not wanted; the optional "type" of the phone can be "mobile" (default), "fixed" or "fax" \phone[fixed]{+2~(345)~678~901}